溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Intellij IDEA如何實現(xiàn)多線程調(diào)試

發(fā)布時間:2022-03-22 10:27:32 來源:億速云 閱讀:1238 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)Intellij IDEA如何實現(xiàn)多線程調(diào)試,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

多線程調(diào)試

開發(fā)過多線程應(yīng)用的朋友應(yīng)該有體會,有些時候,為了觀察多個線程間變量的不同狀態(tài),以及鎖的獲取等,就會想到在代碼里加個斷點debug一下。

在IDE里斷點停下來的時候,可以切換到另外的線程中,跑其他的代碼,不會互相影響。當(dāng)然,這里是有個開關(guān)的,在Eclipse里默認(rèn)開啟,

但是在IntelliJ IDEA里默認(rèn)是沒有開啟的。也就是說如果你在IDEA里代碼里加斷點,雖然一個線程的斷了下來,但其他線程的已經(jīng)執(zhí)行過了。

此處把線程的suspend設(shè)置成和Eclipse模式一樣之后,也可以開始多線程應(yīng)用的調(diào)試。

簡單設(shè)置可以直接在斷點處,將suspend改成Thread

Intellij IDEA如何實現(xiàn)多線程調(diào)試

更改IDEA中的默認(rèn)設(shè)置:切換到"Thread" Radio Button,點擊出現(xiàn)的按鈕 ”Make Default"

Intellij IDEA如何實現(xiàn)多線程調(diào)試

一個線程斷下來之后,可以通過在線程窗口切換,到其它線程中繼續(xù)運行。

IntelliJ IDEA里在這兒切換

Intellij IDEA如何實現(xiàn)多線程調(diào)試 

我們看到main線程和pool-1-thread-1這兩個線程都處于RUNNING狀態(tài),切換到任何一個都可以繼續(xù)運行。

此時,就可以寫一個多線程的應(yīng)用,同時向ArryList這一類非線程安全的容器中存放內(nèi)容,然后觀察為什么他們是線程不安全的,會出現(xiàn)什么問題,生動又形象。

關(guān)于“Intellij IDEA如何實現(xiàn)多線程調(diào)試”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI