为了账号安全,请及时绑定邮箱和手机立即绑定

【备战春招】第4天+Jstack实战死循环和死锁

标签:
Java

课程名称:Java生产环境下性能监控与调优详解

课程章节:第二章

主讲老师:若鱼1919

课程内容:

jstack与线程状态:

  1. jstack -option pid 操作指令

    1. jps -l   查看当前有哪些java进程

    2. jstack pid  > pid.txt  把当前线程的日志导入指定文件

  2. 线程的状态

    1. 新建,就绪,等待,运行,关闭

  3. top -p pid  -H   查看当前pid的所有进程

  4. printf "%x" top中的pid   查看当前top中的pid转化为十六进制,在jstack中导出的pid.txt中找到对应转换出来的pid进程号

  5. nohub java -jar XXX.jar  &  运行jar包

  6. tail -f nohub.out   查看当前日志

课程收获:

这两节课学习了Jstack实战死锁和死循环,过程就是如上所述,这节课的内容,还是基本都听懂了,但是末尾老师说了一句很重要的话,就是真正到了项目的时候,没有这么简单的,这只是个例子,尤其是那个死锁的例子,jstck + pid 最后给了死锁的个数,而且显而易见,实战应该不会这么容易。老师给的死循环的例子就比较普通了,就是让所有线程处理等待,这种问题我碰巧在生产上碰到过,但是通过死磕代码找出来的。以后还要学会使用工具来看。

https://img1.sycdn.imooc.com/63e39d0100017f4823041428.jpg




点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
6
获赞与收藏
5

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消