int getHoldCount
1:int getHoldCount()的作用是查询当前线程保持此锁定的个数,也就是调用lock()方法的次数。
int getQueueLength
2:int getQueueLength()的作用是返回正等待获取此锁定的线程估计数,比如有5个线程,1个线程首先执行await()方法,那么在调用getQueueLength()方法后返回的值是4,说明有4个线程同时在等待lock的释放。
int getWaitQueueLength
3:int getWaitQueueLength(Condition condition)的作用是返回等待与此锁定相关的给定条件Condition的线程估计数,比如有5个线程,每个线程都执行同一个Condition对象的await()方法,则调用getWaitQueueLength(Condition condition)方法时返回的int值是5。
boolean hasQueuedThread
4:boolean hasQueuedThread(Thread thread)的作用是查询指定的线程是否正在等待获取此锁定。
方法 boolean hasQueuedThreads()的作用是查询是否有线程正在等待获取此锁定。
boolean hasWaiters
5:boolean hasWaiters(Condition condition)的作用是查询是否有线程正在等待与此锁定有关的condition条件。
boolean isFair
6:boolean isFair()的作用是判断是不是公平锁。
ReentranLock默认使用非公平锁。
boolean isHeldByCurrentThread
7:boolean isHeldByCurrentThread()的作用是查询当前线程是否保持此锁定。
boolean isLocked
8:boolean isLocked()的作用是查询此锁定是否由任意线程保持。