Activity Monitor中的Sample Process功能非常有用。但是,我需要从另一个正在运行的进程(C / C ++)或命令行执行相同的操作(获取样本)。
有没有办法做到这一点?几天以来我一直在谷歌上搜索,没有任何运气。
答案 0 :(得分:12)
答案 1 :(得分:2)
如果您想编写自己的程序,可以使用sysctl
system call获取此类信息。但是,这很乏味。
我建议安装procfs file system(使用MacFUSE构建)。这将在/proc
创建一个新的“目录”,其中包含每个应用程序的大量有用信息(例如内存使用情况,CPU使用情况,锁,打开的文件,套接字,线程等)。该网站提供了如何访问它的示例。然后,您可以简单地编写对这些文件的访问权限。