在多道程序系統中,一組進程中的每一個進程均無限期的等待另一組進程所占有的且不會釋放的資源,這種現象稱為死鎖。
雖然進程在運行過程中,可能發生死鎖,但死鎖的發生也必須具備一定的條件,死鎖的發生必須具備以下必要條件。
1、互斥條件:指進程對所分配到的資源進行排它性使用,即在一段時間内某資源隻由一個進程占用。如果此時還有其它進程請求資源,則請求者隻能等待,直至占有資源的進程用畢釋放;
2、請求和保持條件:指進程已經保持至少一個資源,但又提出了新的資源請求,而該資源已被其它進程占有,此時請求進程阻塞,但又對自己已獲得的其它資源保持不放;
3、不剝奪條件:指進程已獲得的資源,在未使用完之前,不能被剝奪,隻能在使用完時由自己釋放。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!