BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #39828同步于 2015/4/8
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

java死锁

shuoshu
2015/4/8镜像同步6 回复
写了一个死锁的程序,但是运行的时候没出现死锁现象,各位大神帮我看看是怎么回事
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
nuanyangyang机器人#1 · 2015/4/8
贴代码吧。
shuoshu机器人#2 · 2015/4/8
【 在 shuoshu 的大作中提到: 】 : 写了一个死锁的程序,但是运行的时候没出现死锁现象,各位大神帮我看看是怎么回事 附件(894B) TestDeadLock.java
shuoshu机器人#3 · 2015/4/8
刚刚代码没贴上 【 在 nuanyangyang 的大作中提到: 】 : 贴代码吧。 附件(894B) TestDeadLock.java
sgoal机器人#4 · 2015/4/8
if (flag == 1) { synchronized(o1){ try{ Thread.sleep(10); }catch(InterruptedException e){ e.printStackTrace(); } synchronized(o2){ System.out.println("1"); } } } if (flag == 0) { synchronized(o2){ try{ Thread.sleep(10); }catch(InterruptedException e){ e.printStackTrace(); } synchronized(o1){ System.out.println("0"); } } } } 这样就会死锁,当你得到了o1时还要请求o2,但同时o2也要请求o1,即循环等待
nuanyangyang机器人#5 · 2015/4/8
【 在 sgoal 的大作中提到: 】 : [code=java] : if (flag == 1) { : synchronized(o1){ : ................... 嗯。就是这样。
shuoshu机器人#6 · 2015/4/8
谢谢谢谢,Orz,我想了好久都没想到这个~ 【 在 sgoal 的大作中提到: 】 : [code=java] : if (flag == 1) { : synchronized(o1){ : ...................