本帖最后由 李晓旭 于 2012-3-13 23:39 编辑
//t1 t2 两个线程共同执行下列方法
public synchronized void set(String name)
{
if(flag)
try{this.wait();}catch(Exception e){} //t1线程在这里等待的时候(放弃执行权) 为什么t2线程可以进到这个同步函数中?
this.name = name + ":::" + count++;
System.out.println(Thread.currentThread().getName()+"...producer"+this.name);
flag = true;
this.notify();
}
这是毕老师的一个线程间通讯的实例,当t1等待时,不是已经在同步函数中了么?
t2进程应该进不来,不是么?
|
|