为什么需要Lock,而不是直接用synchronized
构建Lock的理由
在解决死锁的时候提出了一个方案是:破坏不可抢占条件,但是这个方案 synchronized 没有办法解决。原因是 synchronized 申请资源的时候,如果申请不到,线程直接进入阻塞状态了,而线程进入阻塞状态,啥都干不了,也释放不了线程已经占有的资源(锁),也就会造成死锁。
但是我们希望的是:
对于“不可抢占”这个条件,占用部分资源的线程进一步申请其他资源时,如果申请不到...
原创
2019-04-28 15:40:03 ·
1097 阅读 ·
0 评论