你還困在"死鎖"中嗎?

? ? ? ?

圖片發(fā)自簡(jiǎn)書App

? ? ? ? "死鎖"是計(jì)算機(jī)操作系統(tǒng)中的一個(gè)專業(yè)名詞,百度百科是這樣對(duì)它進(jìn)行解釋的:“死鎖是指兩個(gè)或兩個(gè)以上的進(jìn)程在執(zhí)行過程中,由于競(jìng)爭(zhēng)資源或者由于彼此通信而造成的一種阻塞的現(xiàn)象,若無外力作用,它們都將無法推進(jìn)下去。此時(shí)稱系統(tǒng)處于死鎖狀態(tài)或系統(tǒng)產(chǎn)生了死鎖,這些永遠(yuǎn)在互相等待的進(jìn)程稱為死鎖進(jìn)程。”系統(tǒng)在運(yùn)行的過程中會(huì)發(fā)生正?;蛘叻钦5臓顟B(tài),而今天所談到的“死鎖問題”正是一種非正常的狀態(tài),一旦發(fā)生死鎖在沒有外力推動(dòng)的情況下就無法進(jìn)行下去了。? ? ?

? ? ? ? 死鎖同樣可以類比于我們?cè)诠ぷ鲗W(xué)習(xí)和生活中遇到的各種問題,事件本身為進(jìn)程,在推進(jìn)的過程中由于資源競(jìng)爭(zhēng)或者進(jìn)程間推動(dòng)順序不當(dāng)引起死鎖,這個(gè)時(shí)候我們困在其中無法自救,進(jìn)程所需要的資源就是我們急需請(qǐng)求的外援幫助。而外援這個(gè)資源從哪里來?? ? ?

? ? ? ? 如何解決死鎖?? ? ?

圖片發(fā)自簡(jiǎn)書App


? ? ? ? 五個(gè)辦法:預(yù)防死鎖、避免死鎖、檢測(cè)死鎖、解除死鎖、鴕鳥算法。前兩個(gè)都是都是事先預(yù)防的策略,中間兩個(gè)是正面解決的辦法,最后一個(gè)是最常采用的辦法,后面詳談。談解決辦法,先了解一下死鎖產(chǎn)生的四個(gè)必要條件,如下圖:? ? ?

圖片發(fā)自簡(jiǎn)書App


? ? ? ? 預(yù)防死鎖是精細(xì)策略,事先破壞四個(gè)必要條件中的一個(gè)或幾個(gè),讓死鎖狀態(tài)根本沒辦法發(fā)生。正如人生一般,將各種可能發(fā)生的危險(xiǎn)因素掐死在搖籃里,這也需要人有極強(qiáng)的預(yù)見力和執(zhí)行力。? ? ?

? ? ? ? 避免死鎖是范圍性的策略,事先預(yù)防系統(tǒng)進(jìn)入不安全的狀態(tài)從而規(guī)避死鎖。將未來的路大致劃分為安全區(qū)和危險(xiǎn)區(qū),一直走在安全區(qū)的中心,連危險(xiǎn)區(qū)的外圍都不去碰觸,這需要我們克制住自己對(duì)一切未知的好奇心并嚴(yán)格執(zhí)行。? ? ?

? ? ? ? 但以上兩種策略過于小心翼翼,難免過分緊繃。而后面的兩種正面解決的辦法肯定更為大氣,不做任何事先措施,允許死鎖的發(fā)生。前者是精準(zhǔn)定位與死鎖有關(guān)的進(jìn)程和資源,立即清除這些壞死部分,一時(shí)的疼痛換來長(zhǎng)期的穩(wěn)定。這個(gè)辦法物無疑是殘暴而簡(jiǎn)單的,揮劍斬情絲必定是強(qiáng)者所為。后者的方式更為溫柔,撤銷或者掛起一些進(jìn)程以求釋放一些資源,緩慢得對(duì)癥下藥,慢慢來總會(huì)藥到病除讓整個(gè)系統(tǒng)重新活過來。? ?

? ? ? ? 最后的鴕鳥算法是實(shí)現(xiàn)度最高的一種辦法。傳說中鴕鳥看到危險(xiǎn)就把頭埋在地底下。當(dāng)你對(duì)某一件事情沒有一個(gè)很好的解決方法時(shí),那就忽略它,就像鴕鳥面對(duì)危險(xiǎn)時(shí)會(huì)把它深埋在沙礫中,裝作看不到。這樣的算法稱為“鴕鳥算法“。這實(shí)在不算是一個(gè)算法,但卻是目前實(shí)際系統(tǒng)采用最多的一種策略。即是“手動(dòng)干預(yù)—重新啟動(dòng)”。這可能在生活中也是應(yīng)用最廣泛的一種策略了。無論時(shí)間抑或新歡,都是記憶重啟的承載。? ? ?

? ? ? 允許路上發(fā)生死鎖,也允許暫時(shí)的困苦不前,允許生活的非正常狀態(tài)發(fā)生畢竟對(duì)于單個(gè)樣本來說它和正常狀態(tài)發(fā)生的概率相等并不可預(yù)測(cè),就像“薛定諤的貓”。關(guān)鍵在于能不能重新處理好進(jìn)程和資源整個(gè)系統(tǒng)活過來,讓自己,活過來。愿各位迷茫困苦的死鎖進(jìn)程中的人們重新振奮,讓系統(tǒng)活過來,讓自己走出來。安好!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、競(jìng)態(tài)條件: 定義:競(jìng)態(tài)條件指的是一種特殊的情況,在這種情況下各個(gè)執(zhí)行單元以一種沒有邏輯的順序執(zhí)行動(dòng)作,從而導(dǎo)致...
    Hughman閱讀 1,434評(píng)論 0 7
  • 一、死鎖的基本概念 1.1 死鎖的定義 一組進(jìn)程中,每個(gè)進(jìn)程都無限等待被該組進(jìn)程中另一進(jìn)程所占用的資源,因而永遠(yuǎn)無...
    yjaal閱讀 1,567評(píng)論 0 6
  • 資源 需要排他性使用的對(duì)象稱為資源。 資源分為兩類:可搶占的和不可搶占的??蓳屨假Y源可以從擁有它的進(jìn)程中搶占而不會(huì)...
    啊啊啊這個(gè)名字就好閱讀 701評(píng)論 0 0
  • 清風(fēng)斜陽,此刻我坐在窗前的軟墊上看書。 就這樣,我過上了很多年前我期望的生活,有暖洋洋的日光,有可眺望遠(yuǎn)方的窗子,...
    四夕良人閱讀 841評(píng)論 0 0
  • 時(shí)隔許久,才發(fā)現(xiàn)你的心跡。 說實(shí)話,回憶曾經(jīng)確實(shí)會(huì)有遺憾,畢竟當(dāng)時(shí)都是真心。
    ChowYueng閱讀 260評(píng)論 0 0

友情鏈接更多精彩內(nèi)容