(一)预防死锁
死锁的发生须同时满足四个条件:互斥条件、不剥夺条件、请求和保持条件、循环等待条件。
预防死锁可以分别从破坏这四个条件入手:
(1)破坏互斥条件
理解:在进程和资源之间加多一层,使其对于多个进程来说宏观上看似是可以同时使用的,但实际上仍由系统完成互斥分配。
(2)破坏不剥夺条件
理解:一种是满足不了则释放已有的所有资源,另一种是增设优先级。
(3)破坏请求和保持条件
理解:就好比之前的哲学家思考问题同一时间只能允许一个人用餐。
(4)破坏循环等待条件
理解:资源的单向请求和分配。在处理后面时前面一定已经处理完毕。
标签:破坏,互斥,死锁,理解,条件,预防 From: https://www.cnblogs.com/Wind730/p/18534475/1-preventing-dead-locks-z1xahub