该位置
notify()的内通话
synchronized块并 不会
因为根据定义无所谓,如果你仍然在
synchronized块,那么你仍然持有锁。
调用notify()时不应该立即通知线程吗?
是。调用
notify()将等待队列(等待条件)中的线程之一(如果有)放入阻塞队列(等待锁)中。这确实会立即发生,但是被唤醒的线程需要获得锁才能开始运行。因此它立即移出了等待队列,但仍在等待获取锁。
顺便说一句,我建议将其编写为
this.wait(),
this.notify()以便明确指出受影响的对象。



