![]() |
1
1
你的问题“ 代码显示只需要一个锁操作,或者我遗漏了什么? “得到了皮特·柯克汉姆的回答。 主要问题的答案” 在Java中解锁一个被多次锁定的对象需要多少次解锁操作? “就是你引用的那个。
下面的代码显示了如何
输出为:
使用JDK 8为我运行。 |
![]() |
2
2
此代码不会对对象的状态执行任何操作:
锁在同步块开始时获得,在结束时释放。这样做十次会使对象处于与循环开始时相同的状态。 然后,Thread1获取锁,然后等待,这导致它释放锁,直到另一个线程通知对象。
线程2获取锁,打印程序的唯一输出,然后释放锁。 主线程获取一个锁,通知一个等待的线程,然后释放锁。 因此,线程可以按照几个顺序获取锁,所有这些顺序都会导致相同的输出。 |
|
user29759326 · 如何返回递归函数中的最后一个值? 5 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 6 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 6 月前 |
![]() |
rudraraj · java中未声明最终变量 6 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 6 月前 |