欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java的jstack命令使用示例詳解

 更新時間:2022年03月21日 16:55:16   作者:萬貓學(xué)社  
jstack 命令非常的簡單,我們可以通過 jstack -h 或者 jstack -help 命令查看它的用法詳情,今天通過本文重點給大家介紹Java的jstack命令使用,感興趣的朋友一起看看吧

jstack命令簡介

jstack(Java Virtual Machine Stack Trace)是JDK提供的一個可以生成Java虛擬機當(dāng)前時刻的線程快照信息的命令行工具。線程快照一般被稱為threaddump或者javacore文件,是當(dāng)前Java虛擬機中每個線程正在執(zhí)行的Java線程、虛擬機內(nèi)部線程和可選的本地方法堆棧幀的集合。對于每個方法棧幀,將會顯示完整的類名、方法名、字節(jié)碼索引(bytecode index,BCI)和行號。生成的線程快照可以用于定位線程出現(xiàn)長時間停頓的原因,比如:線程間死鎖、死循環(huán)、請求外部資源被長時間掛起等等。

jstack命令參數(shù)

命令語法:

jstack [options] pid

命令參數(shù)說明:

option:jstack命令的可選參數(shù)。如果沒有指定這個參數(shù),jstack命令會顯示Java虛擬機當(dāng)前時刻的線程快照信息,如下圖:

pid:要打印配置信息的Java虛擬機的進程ID。

想要要獲取運行的Java虛擬機進程的列表,可以使用ps命令(Linux系統(tǒng)中)或tasklist命令(Windows系統(tǒng)中),如果Java虛擬機進程沒有在單獨的docker實例中運行,可以使用jps命令。

option都有哪些參數(shù)呢?我們來看一下。

-F參數(shù)

如果Java虛擬機進程由于進程掛起而沒有任何響應(yīng),那么可以使用-F參數(shù)(僅在Oracle Solaris和Linux操作系統(tǒng)上游戲)強制顯示線程快照信息。

比如:

-l參數(shù)

如果使用-l參數(shù),除了方法棧幀以外,jstack命令還會顯示關(guān)于鎖的附加信息,比如屬于java.util.concurrent的ownablesynchronizers列表。

比如:

-m參數(shù)

如果使用-m參數(shù),jstack命令將顯示混合的棧幀信息,除了Java方法棧幀以外,還有本地方法棧幀。本地方法棧幀是C或C++編寫的虛擬機代碼或JNI/native代碼。

比如:

在顯示結(jié)果中,以星號為前綴的幀是Java方法棧幀,而不以星號為前綴的是本地方法棧幀。比如:

-h 和 -help

顯示jstack命令的幫助信息。

結(jié)尾

雖然jstack命令已經(jīng)推出很久并且使用頻率比較搞,但它仍然是一個“實驗性質(zhì)的,并且沒有技術(shù)支持的”(Experimental and Unsupported)工具,日后可能會被轉(zhuǎn)正,也有可能在某個JDK版本中無聲無息地消失。所以,且用且珍惜吧。

不過,我們還可以使用Thread.getAllStackTracesgetAll()方法,獲取Java虛擬機中所有線程的StackTraceElement對象,進而獲得所有線程棧幀信息。

到此這篇關(guān)于Java的jstack命令使用示例詳解的文章就介紹到這了,更多相關(guān)Java的jstack命令使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 關(guān)于實體類中Date屬性格式化@JsonFormat @DateTimeFormat

    關(guān)于實體類中Date屬性格式化@JsonFormat @DateTimeFormat

    這篇文章主要介紹了關(guān)于實體類中Date屬性格式化@JsonFormat @DateTimeFormat問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 基于Java實現(xiàn)五子棋小游戲(附源碼)

    基于Java實現(xiàn)五子棋小游戲(附源碼)

    這篇文章主要為大家介紹了如何通過Java實現(xiàn)簡單的五子棋游戲,文中的示例代碼講解詳細,對我們學(xué)習(xí)Java游戲開發(fā)有一定幫助,需要的可以參考一下
    2022-11-11
  • Java throw Exception實現(xiàn)異常轉(zhuǎn)換

    Java throw Exception實現(xiàn)異常轉(zhuǎn)換

    這篇文章主要介紹了Java throw Exception實現(xiàn)異常轉(zhuǎn)換,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • Java并發(fā)編程之重入鎖與讀寫鎖

    Java并發(fā)編程之重入鎖與讀寫鎖

    這篇文章主要介紹了Java并發(fā)編程之重入鎖與讀寫鎖,文中相關(guān)實例代碼詳細,測試可用,具有一定參考價值,需要的朋友可以了解下。
    2017-09-09
  • springboot實現(xiàn)全局異常處理的方法(住家飯系統(tǒng))

    springboot實現(xiàn)全局異常處理的方法(住家飯系統(tǒng))

    住家飯系統(tǒng)將異常類型分為客戶端異常(ClientException),系統(tǒng)異常(ServiceException),遠程調(diào)用異常(RemoteException),本文給大家介紹springboot實現(xiàn)全局異常處理的方法,感興趣的朋友一起看看吧
    2025-05-05
  • 帶你重新認識Java動態(tài)代理

    帶你重新認識Java動態(tài)代理

    這篇文章主要為大家介紹了Java的動態(tài)代理,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • java根據(jù)本地IP獲取mac地址的方法

    java根據(jù)本地IP獲取mac地址的方法

    這篇文章主要為大家詳細介紹了java根據(jù)本地IP獲取mac地址的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • SpringBoot詳細講解斷言機制原理

    SpringBoot詳細講解斷言機制原理

    斷言Assertion是測試方法中的核心部分,用來對測試需要滿足的條件進行驗證。這些斷言方法都是org.junit.jupiter.api.Assertions的靜態(tài)方法。檢查業(yè)務(wù)邏輯返回的數(shù)據(jù)是否合理。所有的測試運行結(jié)束以后,會有一個詳細的測試報告
    2022-06-06
  • Java從零開始創(chuàng)建功能豐富的PDF文檔

    Java從零開始創(chuàng)建功能豐富的PDF文檔

    隨著數(shù)字化辦公的普及,PDF格式因其跨平臺兼容性和安全性而被廣泛應(yīng)用于各種場景中,本文將詳細介紹如何使用Java來實現(xiàn)PDF文檔的一鍵生成,有需要的可以了解下
    2025-01-01
  • Java 如何從spring容器中獲取注入的bean對象

    Java 如何從spring容器中獲取注入的bean對象

    這篇文章主要介紹了Java 如何從spring容器中獲取注入的bean對象,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-11-11

最新評論