天天看點

13.網際網路大廠高頻面試題-死鎖

文章目錄

  • ​​死鎖編碼及定位分析​​
  • ​​是什麼​​
  • ​​死鎖案例示範​​
  • ​​如何解決​​

死鎖編碼及定位分析

搞并發,天天河邊走,不可能不濕鞋。肯定會遇到死鎖。

是什麼

13.網際網路大廠高頻面試題-死鎖
13.網際網路大廠高頻面試題-死鎖

學習的境界:學到皮,學到肉,學到骨,學到精,學到魂!

13.網際網路大廠高頻面試題-死鎖

死鎖案例示範

線程操縱資源類。

13.網際網路大廠高頻面試題-死鎖
13.網際網路大廠高頻面試題-死鎖

主線程測試:

13.網際網路大廠高頻面試題-死鎖

運作結果:

13.網際網路大廠高頻面試題-死鎖

所謂的吃着碗裡的,看着鍋裡的。

如何解決

使用jdk工具:

13.網際網路大廠高頻面試題-死鎖
13.網際網路大廠高頻面試題-死鎖

去這個java檔案所在的檔案目錄下:直接敲cmd就出來控制台了。而且是目前目錄。

13.網際網路大廠高頻面試題-死鎖

idea自帶控制台,可以直接用:jps -l

13.網際網路大廠高頻面試題-死鎖

會定位到出現死鎖的線程是DeadLockDemo.

然後檢視它的堆棧:jstack

13.網際網路大廠高頻面試題-死鎖
13.網際網路大廠高頻面試題-死鎖

會分析出是否出現了死鎖。

13.網際網路大廠高頻面試題-死鎖

很明顯可以看出資源的競争位址。