ReentrantLock和Semaphore的共同的基类：AbstractQueuedSynchronizer