黑马程序员技术交流社区
标题:
多线程同步死锁问题
[打印本页]
作者:
paozhuanyinyu
时间:
2014-8-13 21:00
标题:
多线程同步死锁问题
我同步方法里面同步代码块,两个锁不一样,为什么没有死锁Object obj = new Object();
public synchronized void show() // 同步方法的锁是this
{
synchronized(obj) //同步代码块锁是object
{
if(num>0)
{
try{Thread.sleep(10);}catch (InterruptedException e){}
System.out.println(Thread.currentThread().getName()+".....sale...."+num--);
}
}
}
作者:
高顺德
时间:
2014-8-13 21:25
你是用多线程调用吗?死锁是出现在程序多线程调用的时候,cup在切换不同的线程进度时,才会出现的。
个人总结 死锁出现的条件:
1.多线程调用代码段、
2.在前一个条件下电脑CPU内核越少越容易出现死锁,
3.在以上两个条件下死锁是概率发生事件,而不是必须发生时间,简单来说就是在前两个条件下,看运气
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2