死鎖的概念、產生的必要條件、避免和解決死鎖的辦法

什麼是死鎖? 死鎖,是指多個進程在運行過程中因爭奪資源而造成的一種僵局,當進程處於這種僵持狀態時,若無外力作用,它們都將無法再向前推進。 如下圖所示:如果此時有一個線程 A,已經持有了鎖 A,但是試圖獲取鎖 B,線程 B 持有鎖 B,而試圖獲取鎖 A,這種情況下就會產生死鎖。 產生死鎖的原因? 由於系統中存在一些不可剝奪資源,而當兩個或兩個以上進程佔有自身資源,並請求對方資源時,會導致每個進程都無
相關文章
相關標籤/搜索