#产生死锁的条件
###(1) 互斥条件
资源是独占的且排他使用。即任意时刻一个资源只能给一个进程使用,其他申请者只有等待,直到资源被占有者释放。如例子中的A,B资源。
###(2) 不可剥夺条件
进程所获得的资源在未使用完毕之前,不能被其他进程强行剥夺,而只能由拥有该资源的进程自愿释放。如例子中P2 不能强占P1拥有的A资源,而P1也不能强占P2拥有的B资源。
###(3) 请求和保持条件
进程每次申请他所需要的一部分资源,在申请新的资源的同时,继续占用已分配到的资源。如例子中P1申请B资源时继续占有A资源,P2申请A资源时继续占有B资源。
###(4) 循环等待条件
在发生死锁时,必然存在一个进程等待环路,环路中的每一个进程已占有的资源同时被另一个进程所申请。如例子中的P1和P2就是一个简单的等待环路。