考虑到多个线程正在尝试访问关键部分,将会发生一个线程,该线程在其具有wait()和notify()产生并释放锁的同步块内发生Exception。
将释放同步监视器:“如果主体的执行正常或突然完成,则将在同一监视器上自动执行解锁动作。” Java语言规范17.1。同步。
其他线程将能够继续同步,并调用wait和notify。
如果异常的线程持有一些关键的程序逻辑资源,则可能需要使用try-finally来确保将其释放。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句