为每个锁关联一个获取计数值和一个所有者线程。当计数值为零时,这个锁就被认为是没有被任何线程所持有,当线程请求一个未被持有的锁时,JVM将记下锁的持有者,并将获取计数值置为1。如果同一个线程再次获得这个锁,计数值将递增,而当线程退出同步代码块时,计数器会相应的递减,这个锁将被释放。
为每个锁关联一个获取计数值和一个所有者线程。当计数值为零时,这个锁就被认为是没有被任何线程所持有,当线程请求一个未被持有的锁时,JVM将记下锁的持有者,并将获取计数值置为1。如果同一个线程再次获得这个锁,计数值将递增,而当线程退出同步代码块时,计数器会相应的递减,这个锁将被释放。