什么是死锁?产生死锁的原因是什么?如何预防死锁?
解析:死锁是出于并发进程(或线程)互相等待对方所拥有的资源,且在得到对方的资源之前不释放自己所拥有的资源,从而造成各并发进程(或线程)都不能继续推进的状态。
死锁的起因是由于资源竞争,产生死锁的根本原因在于系统提供的资源个数少于并发进程所要求的该类资谅数。
预防死锁的方法
[1] 摒弃“互斥条件”
[2] 摒弃“请求与保持”条件。要求进程必须-次性申请其运行所需的所有资源都满足之后才能分配资源给它。否则,不予分配资源。
[3]摒弃“不可剥夺”条件当一个进程在申请其他的资源得不到满足,释放所有它已经申请到的资源。
[4]摒弃“环路等待”条件
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
解析:死锁是出于并发进程(或线程)互相等待对方所拥有的资源,且在得到对方的资源之前不释放自己所拥有的资源,从而造成各并发进程(或线程)都不能继续推进的状态。
死锁的起因是由于资源竞争,产生死锁的根本原因在于系统提供的资源个数少于并发进程所要求的该类资谅数。
预防死锁的方法
[1] 摒弃“互斥条件”
[2] 摒弃“请求与保持”条件。要求进程必须-次性申请其运行所需的所有资源都满足之后才能分配资源给它。否则,不予分配资源。
[3]摒弃“不可剥夺”条件当一个进程在申请其他的资源得不到满足,释放所有它已经申请到的资源。
[4]摒弃“环路等待”条件