我在跑
top -H -b -n 1
在一个Java应用程序的Linux上
我得到的结果标题:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
是我看到每个thread的CPU百分比一个真正的CPU,这意味着它不考虑线程浪费在等待锁等等,所以它纯粹是线程已经花在CPU上的时间。
如果你想了解更多关于进程I / O访问和CPU使用情况的信息,你可以看看iotop 。 该应用程序提供有关进程的信息,如input/输出信息。 Iotop使用来自/ proc文件的信息,这里是16528的例子。
cat / proc / 16528 / io
rchar:48752567
wchar:549961789
syscr:5967
syscw:67138
read_bytes:49020928
write_bytes:549961728
cancelled_write_bytes:0
我知道有可能把它叫做顶级bash模式。
iotop -botqqq –iter = 3 >> / var / log / iotop
你也可以看看dstat,但它就像顶级的,全球的系统不是特定的进程。
您没有线程locking信息。
如果你只看看java可能看看jconsole它使用ThreadMXBean getThreadCpuTime()函数。