1.死锁
检测死锁:在等待关系的有向图中搜索循环。
产生死锁的4个必要条件:
1)互斥条件:共享资源独占访问
2)不可剥夺条件:不能强制其他线程释放资源
3)请求和保持条件:在等待申请的新的资源时,继续占有已分配的资源
4)循环等待条件:发生死锁时,存在一个循环等待的队列{P1, P2, P3, ...} P1等待P2占有的资源,P2等待P3占有的资源,...,Pn等待P1占有的资源。
死锁的预防:
1.资源一次性分配
2.当某进程新申请的资源未获取时,释放已获取的资源
3.资源有序分配,给资源分配编号,每个资源按编号递增请求资源,释放则相反
原文地址:https://www.cnblogs.com/walker993/p/9291874.html
时间: 2024-11-25 16:50:02