linux修改线程数,linux线程调度的三种方法

  linux修改线程数,linux线程调度的三种方法

  Linux下的Java线程分析?在生产环境(Linux)下,有什么方法可以知道一个线程当前的运行情况,比如是否卡死,是否吃了很多cpu和内存?感谢大家修改,添加评论,修改记录,举报问题,按投票排序按时间排序只展示3个我关心的人的回答——李李,JAVA开发者个人认为一个简单的方法就是打开JVM的堆存储快照,不用添加代码,看看哪些线程是应用创建的,内存被占用在哪里等等.2012-05-15-添加评论-贾澈,我以前是淘宝java攻城工程师,正在创业.下面是tomcat上的应用程序。其他Java程序,只要你能触发他的线程转储并得到结果,都是一样的。

  1.ps -ef grep java

  找到java程序的进程id并定位pid

  2.最高Hp $pid

  移位t

  检查消耗cpu时间最多的线程,并记录线程的id。

  3.将上诉线程ID转换为16个禁止的小写字母,如0x12ef。

  4.kill -3 $pid触发tomcat的线程转储

  5.找到tomcat的catalin.out日志,取出上面线程对应的代码段。

  完成了。

  Jiacheo.org/blog.2012-05-15补充评论——攻城工程师冯雪峰懂一些python,偶尔可以用jdk自带的jstack分析进程的堆栈信息。在分析之前,你需要找出哪个进程和哪个线程消耗更多的资源。您可以使用top命令来完成此操作。

  我以前写过这个方面的简单用法。请参考flysnowxf.iteye.com/blog.

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: