1. 程式人生 > >[think in java2] java 併發發生死鎖的條件

[think in java2] java 併發發生死鎖的條件

1、互斥條件:

     任務使用的資源中至少一個是不能共享的。

2、至少有一個任務它必須持有一個資源且正在等待獲取一個當前被別的任務持有的資源。

3、資源不能被任務搶佔,任務必須把資源釋放當作普通事件。

4、必須有迴圈等待,這是,一個任務等待其他任務所持有的資源,後者又在等待另一任務持有的資源,這樣一直下去,直到有一個任務在等待第一個任務所持有的資源,使得大家都被鎖住。