我在跑
top -H -b -n 1
在 Linux 上安装 Java 应用程序
我得到带有标题的结果:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
我看到的每个真实 CPU 的 %CPUthread
是指它没有考虑线程在等待锁等方面所浪费的时间,因此它纯粹是线程在 CPU 上花费的时间。
答案1
如果你正在寻找有关进程 I/O 访问和 CPU 使用率的更多信息,也许你可以看看iotop。该应用程序提供与 top 类似的进程信息,但用于输入/输出信息。iotop 使用来自 /proc 文件的信息,此处以进程 16528 为例。
猫/proc/16528/io
rchar:48752567
wchar:549961789
syscr:5967
syscw:67138
读取字节数:49020928
写入字节数:549961728
已取消写入字节数:0
我知道可以像 top 一样在 bash 模式下调用它。
iotop -botqqq --iter=3 >> /var/log/iotop
你可以看统计信息也是,但是它就像 top 一样,对于系统来说是全局的,而不是特定于某个进程的。
您没有线程锁信息。
如果你只寻找 java 也许可以看看 控制台它用ThreadMXBeangetThreadCpuTime() 函数。