老师您好,我看网上有提到说,wait, notify, notifyAll 这三个函数都是要在Synchronized代码块中去使用的
关于wait方法需要在Synchronized块中去使用我可以理解,因为wait()需要释放获得的对象锁,所以必须要先在Synchronized块下去拥有锁
而关于notify和notifyAll方法,根据祥仔的讲解,他们只是使得处于等待池的线程进入锁池去竞争获取锁的机会。
那就算不在Synchronized块下面,不是也应该可以调用该锁对象的notify方法,让该锁对象中处于等待池的线程进入锁池去竞争获取锁的机会嘛?
所以notify和notifyAll方法是否必须使用在Synchronized块下面呢?
希望祥仔可以帮忙解惑~,感谢!