0

为什么在获得锁控制后会进入第二个 lock.lock() 语句?难道它不应该无限期地等待第二个锁定语句来获取它吗?

是因为我在单线程中获得锁吗?

   Class LockTest{
        private static final ReentrantLock lock = new ReentrantLock();  
        public static void main(String[] args){
            lock.lock();
            System.out.println(lock.isLocked());
            lock.lock();
            System.out.println(lock.isLocked());
        }
    }

输出:

true
true
4

0 回答 0