void method1() {
synchronized(this) { // Acquires intrinsic lock
method2();
}
}
void method2() {
synchronized(this) {} // Acquires same lock due to Reentrant synchronization
}
第一次鎖定在method1中獲得,該方法調用synchronized方法2,其中第二次獲取相同的鎖定。可重入同步 - 所謂同步方法的解鎖
現在我的疑問是當方法2()中的同步塊結束時,第一次發生解鎖並返回到方法1()的同步塊,其中第二次再次解鎖。
它是否在內部管理ReentrantLock之類的鎖計數?