8黑马币
最佳答案首先,定义同步代码块的位置就不对,因为多线程操作共有数据时,要避免安全隐患,就需要对操作共用数据的部分进行同步,
而楼主的程序有定义标记flag,它是资源resource里的共有数据,也就是说,flag也是要放在同步代码快中。
其次,
wait():
notify();
notifyAll();
以上都使用在同步中,因为要对持有监视器(锁)的线程操作。
所以要使用在同步中,因为只有同步才具有锁。
简单点说,就是wait,notify,要放在同步代码块中才会起效 ...
| |
| |
| |
| |