From 4d500a9c874b120fbe08f07774351958d74a5de3 Mon Sep 17 00:00:00 2001 From: wenshao Date: Fri, 2 Sep 2011 17:55:52 +0000 Subject: [PATCH] git-svn-id: http://code.alibabatech.com/svn/druid/trunk@596 b9813039-fb51-4c41-a8b9-e21c2acb5095 --- .../com/alibaba/druid/pool/DruidDataSource.java | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java index 837bdeef96..3d1946efff 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java +++ b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java @@ -709,21 +709,16 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat lock.lock(); try { - int numTestsPerEvictionRun = DruidDataSource.this.numTestsPerEvictionRun; - if (numTestsPerEvictionRun <= 0) { - numTestsPerEvictionRun = 1; - } - - for (int i = 0; i < poolingCount; ++i) { + final int checkCount = poolingCount - minIdle; + + for (int i = 0; i < checkCount; ++i) { ConnectionHolder connection = connections[i]; - if (poolingCount - evictList.size() <= minIdle) { - break; - } - long idleMillis = System.currentTimeMillis() - connection.getLastActiveTimeMillis(); if (idleMillis >= minEvictableIdleTimeMillis) { evictList.add(connection); + } else { + break; } } int removeCount = evictList.size();