zoukankan      html  css  js  c++  java
  • Linux jstack分析cpu占用100%

    背景:

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

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

    ps mp pid -o THREAD,tid,命令查看这个进程下面的所有线程占用情况。

    发现线程324占用最多。

    使用jstack进行跟踪:

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

    jstack 324> test

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

    查看jstack 生成的文件:

    下面可以看出是哪行代码导致,查看那行代码发现有死循环。跟踪解决完毕。

    上面是查看cpu占用情况,举一反三,其他的相关资源分析方法应该是类似的。

    这种查起问题来很有成就感,跟我们牛牛的开发学的一招以后大家也可以用起来~~~
     

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

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

  • 相关阅读:
    Gradle gitignore Gradle 模式 上传SVN 要忽略的文件
    加速Android Studio/Gradle构建
    JAVA unicode转换成中文
    进程与线程
    Flask快速入门
    tensorflow入门指南
    BP神经网络与Python实现
    文档数据库MongoDB
    Python虚拟环境virtualenv
    Python爬虫框架Scrapy
  • 原文地址:https://www.cnblogs.com/shengs/p/4778755.html
Copyright © 2011-2022 走看看