Java併發編程實戰--通過線程轉儲信息來分析死鎖

      雖然防止死鎖的主要責任在於你自己,但JVM仍然通過線程轉儲來幫助識別死鎖的發生。線程轉儲包括各個運行中的線程的棧追蹤信息,這類似於發生異常時的棧追蹤信息。線程轉儲還包括加鎖信息,例如每個線程持有了哪些鎖,在哪些棧幀中獲得這些鎖,以及被阻塞的線程正在等待獲取哪一個鎖。在生成線程轉儲之前,JVM將在等待關係圖通過循環來找出死鎖。如果發現了一個死鎖,則獲取相應的死鎖信息,例如在死鎖中涉及哪些
相關文章
相關標籤/搜索