黑马程序员技术交流社区
标题:
在多线程中,线程被唤醒时if和while是怎样的流程
[打印本页]
作者:
老外
时间:
2015-1-20 14:48
标题:
在多线程中,线程被唤醒时if和while是怎样的流程
刚刚看了视频,在下面的代码里,如果是用if判断的话,线程被唤醒时为什么会直接往下进行,而用while的时候,线程会回去再次判断条件的真假啊?帮忙解释一下,我自己没弄明白!
public synchronized void set(String name)
{
while(flag)
try{wait();}catch(Exception e){}线程在这里停止,被唤醒时,如果用if就是继续向下执行,而while就是返回上面从新判断?
this.name = name+"--"+count++;
System.out.println(Thread.currentThread().getName()+"...生产者..."+this.name);
flag = true;
this.notifyAll();
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2