From 67293c788f899236979511a89203215e86396f24 Mon Sep 17 00:00:00 2001 From: wenshao Date: Mon, 5 Sep 2011 10:02:15 +0000 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E9=A5=A5=E9=A5=BF=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://code.alibabatech.com/svn/druid/trunk@643 b9813039-fb51-4c41-a8b9-e21c2acb5095 --- src/main/java/com/alibaba/druid/pool/DruidDataSource.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java index ea5b0fac13..24bd11da72 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java +++ b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java @@ -647,8 +647,9 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat // 必须存在线程等待,才创建连接 int waitThreadCount = lock.getWaitQueueLength(notEmpty); - if (poolingCount - waitThreadCount >= 0) { - empty.await(3, TimeUnit.SECONDS); // 防止信号丢失引起的等待 + if (poolingCount >= waitThreadCount) { + notEmpty.signal(); + empty.await(); // 防止信号丢失引起的等待 continue; }