黑马程序员技术交流社区
标题:
什么叫做死锁
[打印本页]
作者:
刘文文
时间:
2015-9-23 21:13
标题:
什么叫做死锁
什么叫做死锁
作者:
信仰年轻
时间:
2015-9-23 21:16
死锁就是 可以这么理解 就是俩线程互相拿个锁 但是互相又需要对方的锁 谁也不给对方 然后就锁上了
作者:
iceknc
时间:
2015-9-23 21:18
你要的东西在我手上,我要的东西在你手上,然后我两谈判谈崩了,谁都得不到各自想要的东西
作者:
xuxu5112
时间:
2015-9-23 21:27
本帖最后由 xuxu5112 于 2015-9-23 21:35 编辑
今天刚学 我是这么理解的 一把锁对应 一把钥匙
CUP会在多个线程之间高效的切换
现在有AB两个线程
A里面 有 A锁 嵌套 B锁
B里面 有 B锁 嵌套 A锁
现在A开始执行 看到A锁就拿到了 A钥匙 执行到这里
B抢到了CPU资源 开始执行 看到B锁就拿了B钥匙 继续执行
下面看到A锁 但是 A钥匙在 A线程里 所有B线程拿不到然后程序回到 A线程 继续执行 看到B锁 需要B钥匙 但是B钥匙在B线程里
A线程也拿不到 然后程序就在A,B两个线程之间切换谁都没办法执行下去 形成死锁
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2