如何避免死锁

线程产生死锁之后按理说只能通过外部的干预解决问题

比如说:重启程序或者kill线程

避免就是破坏死锁条件:

首先,互斥条件是没办法破坏的,因为它是互斥锁的基本约束

其他三个可以通过人工干预来破坏

破坏请求和保持条件:在首次执行时一次性申请所有的资源

破坏不可抢占条件:主动释放线程占有的资源

破坏循环等待条件:按序申请资源来预防死锁的产生,就是给资源编号,可以按照线性化的顺序来申请资源

 

posted @ 2022-04-17 16:31  开源遗迹  阅读(54)  评论(0)    收藏  举报