线程死锁
死锁是由于多个线程间相互等待资源,而又不释放资源导致的无穷无尽的等待
造成死锁的条件
- 互斥条件:一个资源每次只能被一个线程使用
- 请求与保持条件:一个线程因请求资源而阻塞时,对已获得的资源保持不放
- 不剥夺条件:线程已获得的资源,在未使用完之前,不能强行剥夺
- 循环等待条件:若干线程之间形成一种头尾相连的循环等待资源关系
只有以上四个条件同时满足时,才会造成死锁,所以破坏死锁的方式也就是只要使得四个条件中的一个不被满足即可
参考文献
死锁是由于多个线程间相互等待资源,而又不释放资源导致的无穷无尽的等待
只有以上四个条件同时满足时,才会造成死锁,所以破坏死锁的方式也就是只要使得四个条件中的一个不被满足即可
参考文献
bug生产者阅读 58
SHERlocked93赞 1阅读 1k
阮小贰赞 1阅读 2.3k
陈文茂赞 1阅读 3.8k评论 2
macrozheng赞 1阅读 781
异常君赞 1阅读 1.1k
王中阳讲编程赞 2阅读 2.2k
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。