diff --git a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java index 304f19f842..b410850bea 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java +++ b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java @@ -857,7 +857,12 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat } public int getWaitThreadCount() { - return lock.getWaitQueueLength(notEmpty); + lock.lock(); + try { + return lock.getWaitQueueLength(notEmpty); + } finally { + lock.unlock(); + } } public int getLockQueueLength() {