安全锁 调用notify,wait的线程一定会获得锁吗?
浏览量:2831
时间:2021-03-13 14:31:41
作者:admin
调用notify,wait的线程一定会获得锁吗?
wait and notify的性质是基于条件对象的,并且只能由已获取锁的线程调用。Java中的每个对象都有一个隐式锁。隐式锁与条件对象相关联。当线程获得隐式锁(例如,进入同步代码区域)时,它可以调用wait。语义是等待condition对象。其他线程可以等待condition对象。在满足条件之后,它可以调用notify或no Tifyall来唤醒等待这个条件对象的所有线程。我建议您参考reentrantlock类,它可以反映上面提到的所有内容。
newCondition()什么意思?
Newcondition Newcondition()返回绑定到此锁实例的新条件实例。
在等待条件之前,锁必须由当前线程保持。呼叫条件。等待()将在等待前自动释放锁,并在等待返回前重新获取锁。实现注意事项条件实例的具体操作取决于锁的实现,锁的实现必须记录在案。Return:此锁实例的新条件实例抛出:Unsupported operationexception-如果锁实现不支持条件
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。