jstack分析cpu占用100%(转)

背景:

运行测试程序后,top命令发现某个进程(pid)占用cpu达到100%。 node

查看哪一个线程占用最多资源:

ps mp pid -o THREAD,tid,命令查看这个进程下面的全部线程占用状况。 测试

发现线程324占用最多。 spa

使用jstack进行跟踪:

jstack pid 进行查看输出到临时文件 线程

jstack 323 > test 进程

将刚刚发现占用cpu最多的线程id(324)换算成16进制,324==》144 资源

查看jstack 生成的文件: 开发

下面能够看出是哪行代码致使,查看那行代码发现有死循环。跟踪解决完毕。 test

上面是查看cpu占用状况,触类旁通,其余的相关资源分析方法应该是相似的。 效率

这种查起问题来颇有成就感,跟咱们牛牛的开发学的一招之后你们也能够用起来~~~
  循环

后记:
测试关注的东西不少,点到面,再面到点,而开发们在技术上了解会的分析方法不少,咱们在发现bug后不是直接丢给开发,fix后外围回归,而是向开发请教分析方法,获得“渔”,开发也很乐于教给咱们,这样咱们之后遇到相似问题就能直接进行分析,这样才能不断既提升充实本身,提升效率,而且会有颇有成就感,这是一件很是快乐的事情。

from: http://testing.etao.com/node/615

相关文章
相关标签/搜索