获取每个线程的 CPU 统计信息

获取每个线程的 CPU 统计信息

我对特定应用程序中每个线程的当前 CPU 使用率(确切地说是 CPU% 和 Wait%)感兴趣。是否可以从某处获取这些信息?

我知道top可以按实际线程(具有 pid 的线程)拆分信息,但它不会显示每个线程的系统/用户/等待 CPU 使用率拆分。我还想以某种方式记录该信息。您知道任何可以做到这一点的应用程序(或 API)吗?

答案1

我会调查系统水龙头。这个工具一定能满足您的需求。线程分析的示例;不知道它是否具有您想要的所有内容,但您可以对其进行修改以使其具有您想要的内容。

答案2

top -H -p pid 

希望能够有所帮助

答案3

您可以使用命令获取每个线程的 CPU 使用率百分比ps

 ps -emo %cpu,pid,user,args

计算方法如下ps manpage

目前,它是使用的 CPU 时间除以进程运行的时间(cputime/realtime 比率),以百分比表示。

答案4

你试过 sar 吗?它甚至可以在 pid 级别获取大量信息。

相关内容