如何避免死锁呢?

杨采妮 Java面经 发布时间:2022-05-30 09:45:05 阅读数:10098 1
下文笔者讲述避免死锁的方法分享,如下所示:
死锁会使程序处于无法正常的对外提供服务状态,
下文笔者将讲述死锁发生的必备条件和避免死锁的方法

死锁发生的必备条件

  
互斥条件:
    一个资源每次只能被一个进程使用

请求与保持条件:
    一个进程因请求资源而阻塞时,对已获得的资源保持不放

不剥夺条件:
    进程已获得的资源,在末使用完之前,不能强行剥夺

循环等待条件:
    若干进程之间形成一种头尾相接的循环等待资源关系

避免死锁的方法

  方法1
     加锁顺序(线程按照一定的顺序加锁)

  方法2:
     加锁超时时间(线程尝试获取锁的时候加上一定的时间,
	    超过时间则放弃对该锁的请求,并释放自己占有的锁) 
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaMianJing/202205/16538751313564.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者