关于notify的使用场景
来源:8-7 notify和notifyall的区别
 
			YogurtJ
2020-02-08
老师您好,我看网上有提到说,wait, notify, notifyAll 这三个函数都是要在Synchronized代码块中去使用的
关于wait方法需要在Synchronized块中去使用我可以理解,因为wait()需要释放获得的对象锁,所以必须要先在Synchronized块下去拥有锁
而关于notify和notifyAll方法,根据祥仔的讲解,他们只是使得处于等待池的线程进入锁池去竞争获取锁的机会。
那就算不在Synchronized块下面,不是也应该可以调用该锁对象的notify方法,让该锁对象中处于等待池的线程进入锁池去竞争获取锁的机会嘛?
所以notify和notifyAll方法是否必须使用在Synchronized块下面呢?
希望祥仔可以帮忙解惑~,感谢!
写回答
	2回答
- 
				
				同学好,同学其实可以直接动手试试,就会发现notify和notifyall也都要放在synchrozined里, 这两个都是通知其他线程锁已释放,要是都没有获取,通知了也没有意义了 012020-02-11
- 
				  4566413851 2020-02-11 同学,你这么多问题 00
相似问题
				Volatile的应用场景
				
			
			
			
			回答 1
				intern在什么真实场景下能用到?
				
			
		回答 1
 
						