开发者社区> 问答> 正文

[@炯轩][¥20]产生死锁的必要条件

产生死锁的必要条件

展开
收起
jack胡 2018-12-17 16:53:22 2179 0
2 条回答
写回答
取消 提交回答
  • Zzz
    开发

    死锁产生的4个必要条件
        1、互斥:某种资源一次只允许一个进程访问,即该资源一旦分配给某个进程,其他进程就不能再访问,直到该进程访问结束。
        2、占有且等待:一个进程本身占有资源(一种或多种),同时还有资源未得到满足,正在等待其他进程释放该资源。
        3、不可抢占:别人已经占有了某项资源,你不能因为自己也需要该资源,就去把别人的资源抢过来。
        4、循环等待:存在一个进程链,使得每个进程都占有下一个进程所需的至少一种资源。

    2019-07-17 23:22:38
    赞同 展开评论 打赏
  • 死锁产生的4个必要条件:
    1、互斥条件:一个资源每次只能被一个进程使用,即在一段时间内某 资源仅为一个进程所占有。此时若有其他进程请求该资源,则请求进程只能等待。
    2、请求与保持条件:进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源 已被其他进程占有,此时请求进程被阻塞,但对自己已获得的资源保持不放。
    3、不可剥夺条件:进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走,即只能 由获得该资源的进程自己来释放(只能是主动释放)。
    4、循环等待条件: 若干进程间形成首尾相接循环等待资源的关系

    2019-07-17 23:22:38
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载