最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jstack和線程dump實例解析

 更新時間:2018年01月02日 11:00:39   作者:一人淺醉-  
這篇文章主要介紹了jstack和線程dump實例解析,具有一定借鑒價值,需要的朋友可以參考下

jstack定義:

jstack是Java虛擬機自帶的一種堆棧跟蹤工具。

基本介紹:

jstack用于生成java虛擬機當前時刻的線程快照。線程快照是當前java虛擬機內(nèi)每一條線程正在執(zhí)行的方法堆棧的集合,生成線程快照的主要目的是定位線程出現(xiàn)長時間停頓的原因,如線程間死鎖、死循環(huán)、請求外部資源導致的長時間等待等。

線程出現(xiàn)停頓的時候通過jstack來查看各個線程的調(diào)用堆棧,就可以知道沒有響應(yīng)的線程到底在后臺做什么事情,或者等待什么資源。

命令格式:

jstack [ option ] pid

基本參數(shù):

-F 當'jstack [-l] pid'沒有相應(yīng)的時候強制打印棧信息

-l 長列表. 打印關(guān)于鎖的附加信息,例如屬于java.util.concurrent的ownable synchronizers列表.

-m 打印java和native c/c++框架的所有棧信息. -h | -help打印幫助信息

pid 需要被打印配置信息的java進程id,可以用jps工具查詢

案例

C:\Users\Administrator>jstack 5516
Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.79-b02 mixed mode):
 
"DestroyJavaVM" prio=6 tid=0x000000000027d800 nid=0x1bb0 waiting on condition [0
x0000000000000000]
 java.lang.Thread.State: RUNNABLE
 
"Thread-1" prio=6 tid=0x000000000cb13800 nid=0x19ac waiting for monitor entry [0
x000000000d67f000]
 java.lang.Thread.State: BLOCKED (on object monitor)
 at thread.DeadLockDemo$2.run(DeadLockDemo.java:35)
 - waiting to lock <0x00000007d5a9be88> (a java.lang.String)
 - locked <0x00000007d5a9beb8> (a java.lang.String)
 at java.lang.Thread.run(Unknown Source)
 
"Thread-0" prio=6 tid=0x000000000cb0e800 nid=0x6bc waiting for monitor entry [0x
000000000d48f000]
 java.lang.Thread.State: BLOCKED (on object monitor)
 at thread.DeadLockDemo$1.run(DeadLockDemo.java:21)
 - waiting to lock <0x00000007d5a9beb8> (a java.lang.String)
 - locked <0x00000007d5a9be88> (a java.lang.String)
 at java.lang.Thread.run(Unknown Source)

這里運行了一段死鎖code,導致程序中的兩個線程都在等待對方釋放鎖,造成程序死鎖。

從這段代碼中可以明確的看出是 DeadLockDemo.class 中的第35行,和21行出現(xiàn)了阻塞,然后就是要優(yōu)化這個函數(shù)了。

PS : 在實際運行中,往往一次 dump的信息,還不足以確認問題。建議產(chǎn)生三次 dump信息,如果每次 dump都指向同一個問題,我們才確定問題的典型性。

總結(jié)

以上就是本文關(guān)于jstack和線程dump實例解析的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • SpringBoot實現(xiàn)跨域的幾種常用方式總結(jié)

    SpringBoot實現(xiàn)跨域的幾種常用方式總結(jié)

    跨域是指一個域下的文檔或腳本試圖去請求另一個域下的資源,或者涉及到兩個不同域名的資源之間的交互,由于同源策略(Same Origin Policy)的限制,瀏覽器不允許跨域請求,本文小編給大家分享了SpringBoot實現(xiàn)跨域的幾種常用方式,需要的朋友可以參考下
    2023-09-09
  • JustAuth-第三方Oauth2登錄方式

    JustAuth-第三方Oauth2登錄方式

    JustAuth是一款支持多種第三方登錄的工具,本文通過實戰(zhàn)介紹了如何在Springboot項目中集成JustAuth實現(xiàn)第三方登錄,主要步驟包括引入依賴、配置Controller、設(shè)置登錄和回調(diào)頁面,通過訪問登錄頁面并選擇Gitee登錄,系統(tǒng)會重定向至Gitee進行認證
    2024-09-09
  • java 數(shù)據(jù)結(jié)構(gòu)之堆排序(HeapSort)詳解及實例

    java 數(shù)據(jù)結(jié)構(gòu)之堆排序(HeapSort)詳解及實例

    這篇文章主要介紹了java 數(shù)據(jù)結(jié)構(gòu)之堆排序(HeapSort)詳解及實例的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • Mybatis-Plus實現(xiàn)SQL攔截器的示例

    Mybatis-Plus實現(xiàn)SQL攔截器的示例

    這篇文章主要介紹了Mybatis-Plus實現(xiàn)一個SQL攔截器,通過使用SQL攔截器,開發(fā)人員可以在執(zhí)行SQL語句之前或之后對其進行修改或記錄,從而更好地控制和優(yōu)化數(shù)據(jù)庫操作,對Mybatis-Plus?SQL攔截器相關(guān)知識感興趣的朋友一起看看吧
    2023-05-05
  • Springboot實例講解實現(xiàn)專業(yè)材料認證管理系統(tǒng)流程

    Springboot實例講解實現(xiàn)專業(yè)材料認證管理系統(tǒng)流程

    這是一個基于java的畢業(yè)設(shè)計項目,畢設(shè)課題為springboot框架的知識產(chǎn)權(quán)服務(wù)平臺系統(tǒng),是一個采用b/s結(jié)構(gòu)的javaweb項目,需要的朋友可以參考下
    2022-06-06
  • IDEA x64 exe文件打不開,bat能打開問題

    IDEA x64 exe文件打不開,bat能打開問題

    這篇文章主要介紹了IDEA x64 exe文件打不開,bat能打開問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • java實現(xiàn)波雷費密碼算法示例代碼

    java實現(xiàn)波雷費密碼算法示例代碼

    這篇文章主要介紹了java實現(xiàn)波雷費密碼算法示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-01-01
  • Java線程監(jiān)聽,意外退出線程后自動重啟的實現(xiàn)方法

    Java線程監(jiān)聽,意外退出線程后自動重啟的實現(xiàn)方法

    下面小編就為大家?guī)硪黄狫ava線程監(jiān)聽,意外退出線程后自動重啟的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • Java8 Optional的詳細使用教程

    Java8 Optional的詳細使用教程

    這篇文章主要給大家介紹了關(guān)于Java8 Optional的詳細使用教程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • java集合——Java中的equals和hashCode方法詳解

    java集合——Java中的equals和hashCode方法詳解

    本篇文章詳細介紹了Java中的equals和hashCode方法詳解,Object 類是所有類的父類,非常具有實用價值,需要的朋友可以參考下。
    2016-10-10

最新評論

周口市| 治县。| 新田县| 福泉市| 汝城县| 河间市| 邯郸县| 灌阳县| 辽阳县| 贵阳市| 顺平县| 嫩江县| 梓潼县| 青河县| 穆棱市| 乾安县| 云梦县| 渝中区| 滨海县| 清流县| 宾川县| 大新县| 连平县| 长泰县| 枝江市| 遂平县| 长武县| 西和县| 永城市| 泰安市| 黎城县| 仪陇县| 肃宁县| 礼泉县| 尤溪县| 阿尔山市| 丰都县| 湘潭市| 望奎县| 鲁甸县| 含山县|