黑马程序员技术交流社区
标题:
线程没学好,这个怎么解锁?
[打印本页]
作者:
夜写意
时间:
2015-7-13 22:21
标题:
线程没学好,这个怎么解锁?
/*
死锁。
*/
class DeadLockDemo implements Runnable
{
static Object chopsticks = new Object();
static Object knifeAndFork = new Object();
private boolean flag;
DeadLockDemo(boolean flag){
this.flag = flag;
}
public void run(){
if(flag){
while(true){
try{
Thread.sleep(1000);
}catch(InterruptedException e){
e.printStackTrace();
}
synchronized(chopsticks){
System.out.println(Thread.currentThread().getName()
+ "---- if ---- chopsticks");
synchronized(knifeAndFork){
System.out.println(Thread.currentThread().getName()
+ "---- if ---- knifeAndFork");
}
}
}
}else{
while(true){
try{
Thread.sleep(1000);
}catch(InterruptedException e){
e.printStackTrace();
}
synchronized(knifeAndFork){
System.out.println(Thread.currentThread().getName()
+ "---- else ---- knifeAndFork");
//continue;
/**/synchronized(chopsticks){
System.out.println(Thread.currentThread().getName()
+ "---- else ---- chopsticks");
}
}
}
}
}
}
复制代码
作者:
童杭杰
时间:
2015-7-13 22:26
好深奥好深奥
作者:
夜写意
时间:
2015-7-13 22:41
死锁是理解了,但是如果要解的话要怎么做呢?这个就弄不懂了
代码是书上的,觉得弄懂了怎么锁起来的又怎么解锁的才能掌握多线程的锁。
作者:
噜啦啦噜啦啦
时间:
2015-7-13 22:46
赞一个 赞一个!
作者:
pathnet
时间:
2015-7-14 00:15
感觉好高大山
作者:
逆袭白富美
时间:
2015-7-14 00:24
还没学到,楼主加油
作者:
人造番茄
时间:
2015-7-14 07:07
感觉得很厉害的样子
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2