1、如何停止乙個執行緒
官方停止執行緒的stop方法被廢棄,所以不能直接簡單的停止執行緒。
協作的任務執行模式
通知目標執行緒自行結束,而不是強制停止,目標執行緒應當具備處理中斷的能力,中斷方式 interrupt,(volatile)boolean標誌位
interrupted() 是靜態方法,獲取當前執行緒的中斷狀態,並清空 當前執行的執行緒 中斷狀態呼叫後清空,重複呼叫後續返回false
isinterrupted() 是非靜態方法,獲取該執行緒的中斷狀態,不清空 呼叫的執行緒物件對應的執行緒 可重複呼叫,中斷清空前一直返回true
總結 執行緒不應該被直接stop,但是執行緒裡面的任務可以停止
執行緒內建中斷機制的使用與原理
通過volatile boolean 標誌位通知執行緒停止
2、如何寫出執行緒安全的程式?
執行緒安全 :可變資源(記憶體)執行緒間共享
如何實現執行緒安?
a.不共享資源 (可重入函式,) public static int add addtwo(int num)
b. 共享不可變資源 (threadlocal,可深入了解其原始碼,threadlocalmap ,物件持有 弱引用)
thradlocal 使用建議 宣告為全域性靜態 final成員,避免儲存大量物件,用完後及時移除物件
c.共享可變資源
1.可見性 (使用final,volatile,加鎖,鎖釋放時會強制將快取重新整理到主記憶體)
2.操作原子性 (加鎖,保證操作的互斥性,使用原子數值型別 atomicinteger,使用原子屬性更新器atomicrefreencefieldupdater)
3.禁止重排序
面試官最愛問的問題背後真相
1.請介紹一下你自己。這是外企常問的問題。一般人回答這個問題過於平常,只說姓名 年齡 愛好 工作經驗,這些在簡歷上都有,其實,外企最希望知道的是求職者能否勝任工作,包括 最強的技能 最深入研究的知識領域 個性中最積極的部分 做過的最成功的事,主要的成就等,這些都可以和學習無關,也可以和學習有關,但要...
外企面試官最愛問的十個問題
1.請介紹一下你自己。這是外企常問的問題。一般人回答這個問題過於平常,只說姓名 年齡 愛好 工作經驗,這些在簡歷上都有,其實,外企最希望知道的是求職者能否勝任工作,包括 最強的技能 最深入研究的知識領域 個性中最積極的部分 做過的最成功的事,主要的成就等,這些都可以和學習無關,也可以和學習有關,但要...
外企面試官最愛問的十個問題
1.請介紹一下你自己。這是外企常問的問題。一般人回答這個問題過於平常,只說姓名 年齡 愛好 工作經驗,這些在簡歷上都有,其實,外企最希望知道的是求職者能否勝 任工作,包括 最強的技能 最深入研究的知識領域 個性中最積極的部分 做過的最成功的事,主要的成就等,這些都可以和學習無關,也可以和學習有關,但...