有兩種實現(xiàn)方法昭抒,分別是繼承Thread類與實現(xiàn)Runnable 接口
用synchronized關鍵字修飾同步方法
注意synchronize最好用在你要訪問的資源徒欣,比如隊列那就在隊列里弄一把鎖,每次線程訪問隊列時都要獲得隊列的鎖才能訪問泳桦,不要把synchronize放在訪問隊列的代碼那里
反對使用stop()汤徽,是因為它不安全。它會解除由線程獲取的所有鎖定灸撰,而且如果對象處于一種不連貫狀態(tài)泻骤,那么
其他線程能在那種狀態(tài)下檢查和修改它們。結(jié)果很難檢查出真正的問題所在梧奢。suspend()方法容易發(fā)生死鎖狱掂。調(diào)用
suspend()的時候,目標線程會停下來亲轨,但卻仍然持有在這之前獲得的鎖定趋惨。此時,其他任何線程都不能訪問鎖定
的資源惦蚊,除非被"掛起"的線程恢復運行器虾。對任何線程來說讯嫂,如果它們想恢復目標線程,同時又試圖使用任何一個
鎖定的資源兆沙,就會造成死鎖欧芽。所以不應該使用suspend(),而應在自己的Thread類中置入一個標志葛圃,指出線程應該
活動還是掛起千扔。若標志指出線程應該掛起,便用wait()命其進入等待狀態(tài)库正。若標志指出線程應當恢復曲楚,則用一個
notify()重新啟動線程。
怎么處理JAVA多線程死鎖問題?
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門粗截,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人捣炬,你說我怎么就攤上這事熊昌。” “怎么了湿酸?”我有些...
- 文/不壞的土叔 我叫張陵婿屹,是天一觀的道長。 經(jīng)常有香客問我推溃,道長昂利,這世上最難降的妖魔是什么? 我笑而不...
- 正文 為了忘掉前任铁坎,我火速辦了婚禮蜂奸,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘硬萍。我一直安慰自己扩所,他們只是感情好,可當我...
- 文/花漫 我一把揭開白布朴乖。 她就那樣靜靜地躺著祖屏,像睡著了一般助赞。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上袁勺,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼化撕!你這毒婦竟也來了几晤?” 一聲冷哼從身側(cè)響起,我...
- 正文 年R本政府宣布编兄,位于F島的核電站,受9級特大地震影響声登,放射性物質(zhì)發(fā)生泄漏狠鸳。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一悯嗓、第九天 我趴在偏房一處隱蔽的房頂上張望件舵。 院中可真熱鬧,春花似錦脯厨、人聲如沸芦圾。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽个少。三九已至洪乍,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間夜焦,已是汗流浹背壳澳。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 一、進程和線程 進程 進程就是一個執(zhí)行中的程序?qū)嵗砑遥總€進程都有自己獨立的一塊內(nèi)存空間铃彰,一個進程中可以有多個線程。...
- 一芯咧、并發(fā) 進程:每個進程都擁有自己的一套變量 線程:線程之間共享數(shù)據(jù) 1.線程 Java中為多線程任務提供了很多的...
- Java-Review-Note——4.多線程 標簽: JavaStudy PS:本來是分開三篇的牙捉,后來想想還是整...