从 C/C++ 程序对 Mac OS X 上的进程进行采样
-
22-09-2019 - |
题
活动监视器中的示例进程功能非常有用。但是,我需要从另一个正在运行的进程 (C/C++) 或命令行对某个进程执行相同的操作(采样)。
有什么办法可以做到这一点吗?几天来我一直在谷歌上搜索这个,但没有任何运气。
解决方案
其他提示
有一些派上用场的命令行应用程序: sample
和 top
.
如果你想编写自己的程序,你可以使用 sysctl
系统调用 以获得此类信息。然而,这是相当乏味的。
我建议安装 procfs 文件系统 (使用 MacFUSE 构建)。这将创建一个新的“目录” /proc
其中包含每个应用程序的许多有用信息(例如内存使用情况、CPU 使用情况、锁、打开的文件、套接字、线程等)。该网站提供了如何访问它的示例。然后您可以简单地编写对这些文件的访问权限的脚本。
不隶属于 StackOverflow