支付寶怎么換賬號(hào)(支付寶怎么切換賬號(hào)登錄)
2023-01-30
更新時(shí)間:2023-01-24 16:21:50作者:未知
1、 死鎖是由于兩個(gè)或以上的線程互相持有對(duì)方需要的資源,導(dǎo)致這些線程處于等待狀態(tài),無(wú)法執(zhí)行。
2、產(chǎn)生死鎖的四個(gè)必要條件互斥性:線程對(duì)資源的占有是排他性的,一個(gè)資源只能被一個(gè)線程占有,直到釋放。請(qǐng)求和保持條件:一個(gè)線程對(duì)請(qǐng)求被占有資源發(fā)生阻塞時(shí),對(duì)已經(jīng)獲得的資源不釋放。不剝奪:一個(gè)線程在釋放資源之前,其他的線程無(wú)法剝奪占用。循環(huán)等待:發(fā)生死鎖時(shí),線程進(jìn)入死循環(huán),永久阻塞。
3、產(chǎn)生死鎖的原因競(jìng)爭(zhēng)不可搶占性資源,p1已經(jīng)打開(kāi)F1,想去打開(kāi)F2,p2已經(jīng)打開(kāi)F2,想去打開(kāi)F1,但是F1和F2都是不可搶占的,這是發(fā)生死鎖。
4、競(jìng)爭(zhēng)可消耗資源引起死鎖,進(jìn)程間通信,如果順序不當(dāng),會(huì)產(chǎn)生死鎖,比如p1發(fā)消息m1給p2,p1接收p3的消息m3,p2接收p1的m1,發(fā)m2給p3,p3,以此類(lèi)推,如果進(jìn)程之間是先發(fā)信息的那么可以完成通信,但是如果是先接收信息就會(huì)產(chǎn)生死鎖。
5、進(jìn)程推進(jìn)順序不當(dāng),進(jìn)程在運(yùn)行過(guò)程中,請(qǐng)求和釋放資源的順序不當(dāng),也同樣會(huì)導(dǎo)致產(chǎn)生進(jìn)程死鎖。
6、避免死鎖的方法破壞“請(qǐng)求和保持”條件想辦法,讓進(jìn)程不要那么貪心,自己已經(jīng)有了資源就不要去競(jìng)爭(zhēng)那些不可搶占的資源。比如,讓進(jìn)程在申請(qǐng)資源時(shí),一次性申請(qǐng)所有需要用到的資源,不要一次一次來(lái)申請(qǐng),當(dāng)申請(qǐng)的資源有一些沒(méi)空,那就讓線程等待。不過(guò)這個(gè)方法比較浪費(fèi)資源,進(jìn)程可能經(jīng)常處于饑餓狀態(tài)。還有一種方法是,要求進(jìn)程在申請(qǐng)資源前,要釋放自己擁有的資源。
7、破壞“不可搶占”條件,允許進(jìn)程進(jìn)行搶占,方法一:如果去搶資源,被拒絕,就釋放自己的資源。方法二:操作系統(tǒng)允許搶?zhuān)灰銉?yōu)先級(jí)大,可以搶到。
8、破壞“循環(huán)等待”條件將系統(tǒng)中的所有資源統(tǒng)一編號(hào),進(jìn)程可在任何時(shí)刻提出資源申請(qǐng),但所有申請(qǐng)必須按照資源的編號(hào)順序(升序)提出
9、死鎖的檢測(cè)每個(gè)進(jìn)程、每個(gè)資源制定唯一編號(hào)。設(shè)定一張資源分配表,記錄各進(jìn)程與占用資源之間的關(guān)系。設(shè)置一張進(jìn)程等待表,記錄各進(jìn)程與要申請(qǐng)資源之間的關(guān)系。
10、死鎖的解除搶占資源,從一個(gè)或多個(gè)進(jìn)程中搶占足夠數(shù)量的資源,分配給死鎖進(jìn)程,以解除死鎖狀態(tài)。
11、終止(或撤銷(xiāo))進(jìn)程,終止(或撤銷(xiāo))系統(tǒng)中的一個(gè)或多個(gè)死鎖進(jìn)程,直至打破循環(huán)環(huán)路,使系統(tǒng)從死鎖狀態(tài)解脫出來(lái).