0

我创建了一个应用程序来监视正在运行的进程的线程。我想找出它运行的线程以及单个线程的 CPU 和 RAM 消耗。

4

1 回答 1

0

要获取给定 pid 的线程数:

$ ps -o nlwp <pid>

其中 nlwp 代表轻量级进程(线程)的数量。因此 ps 将 nlwp 别名为 thcount,这意味着

$ ps -o thcount <pid>

也可以。

您可以使用 ps 命令获得每个线程的 cpu 使用百分比:

 ps -emo %cpu,pid,user,args

它的计算方式在 ps 手册页中有描述:

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

内存不分配给线程,并且通常跨线程共享。这使得通常无法找到每个线程的内存使用情况。

于 2019-06-17T07:03:03.547 回答