java并发:关于死锁我的一些想法
来源:互联网 发布:电信4g网络 编辑:程序博客网 时间:2024/04/29 16:00
现在回到你的小学 ,那时你8岁上一年级, 正在为小明不借给你橡皮而不高兴。
故事是这样的:
你:小明借你橡皮给我用一下吧!小明:不借,你上次都没借给我,你借给我,我在借给你。你:等我有橡皮在借给你吧,你先借我用一下。小明:你要先借给我,我才借给你。你:你要先借给我,我才借给你。小明:你要先借给我,我才借给你。......
也许那时你还不知道编程中有一个和上面场景类似的概念叫作:‘死锁’
问题的关键在哪?
聪明的你已经发现了,你没橡皮,而小明说你要先借给他橡皮用。
有没有什么解决办法吗?
你们两个人要有一个人让步,或出现一个中间者。
1.首先考虑让步:
- 你将橡皮借给小明,显然目前你没有没有办法借给他,解决方案:买一块借给他……
- 小明将橡皮借给你
2.然后考虑中间者:
- 小李看你正不高兴,了解之后将橡皮借给了你,你将橡皮借给了小明,然后小明将橡皮借给了你
显然上述不管哪种方式,都没有真正的解决问题, 而是退回到了你借橡皮的本身,但是有时候退后一步也许在另一个层面是一种进步。
总结:
‘死锁’是指两个人互掐谁也不让谁
如何避免‘死锁’:
- 其中一人做出让步(打倒其中一个)
- 避免两人见面
0 0
- java并发:关于死锁我的一些想法
- 关于实现高并发服务端的一些想法
- 关于《程序员》杂志百期庆典我的一些想法
- 关于GUI和DirectUI 我的一些想法和计划
- 关于接口、依赖、耦合,我的一些想法
- 关于一些编程的想法
- 关于会议的一些想法
- 关于算法的一些想法
- 关于算法的一些想法
- 关于算法的一些想法
- 关于对象的一些想法~~~
- 关于算法的一些想法
- 关于算法的一些想法
- 关于算法的一些想法
- 关于算法的一些想法
- 关于网站的一些想法
- 关于Eclipse的一些想法
- 关于阅读的一些想法
- Android中的OkHttp3简单用法.
- git使用总结
- thinkphp注意事项
- 坐标系统
- Java网络编程 - 同步阻塞IO模型
- java并发:关于死锁我的一些想法
- Android手机验证码倒计时控件
- dubbo sayHello例子
- 三脚升压电感工作原理
- iOS OC 成员变量是强引用还是弱引用
- 1010. 一元多项式求导 (25)
- 404. Sum of Left Leaves
- 关于机器学习的领悟与反思(张志华北大数学系教授)
- 数值的正则