同步块使用 可重入 锁,这意味着如果线程已经持有该锁,则它可以重新获取它而不会出现问题。因此,您的代码将按预期工作。
请参阅Java教程页面的底部“
固有锁定和同步”。
要引用截至2015年1月的价格…
重入同步
回想一下,一个线程无法获取另一个线程拥有的锁。但是线程可以获取它已经拥有的锁。允许线程多次获取相同的锁将启用 可重入同步
。这描述了一种情况,其中同步代码直接或间接调用也包含同步代码的方法,并且两组代码使用相同的锁。如果没有可重入同步,则同步代码将不得不采取许多其他预防措施,以避免线程自身阻塞。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)