diff --git a/fine-druid/src/com/fr/third/alibaba/druid/pool/DruidDataSource.java b/fine-druid/src/com/fr/third/alibaba/druid/pool/DruidDataSource.java index 54c352f5f..edae35120 100644 --- a/fine-druid/src/com/fr/third/alibaba/druid/pool/DruidDataSource.java +++ b/fine-druid/src/com/fr/third/alibaba/druid/pool/DruidDataSource.java @@ -609,7 +609,9 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat createConnectionThread.setStarted(false); String destroyName = "Druid-ConnectionPool-Destroy-" + System.identityHashCode(this) + this.getUrl(); if (destroyConnectionThread != null) { - destroyConnectionThread.interrupt(); + if (!destroyConnectionThread.isInterrupted()) { + destroyConnectionThread.interrupt(); + } } destroyConnectionThread = new DestroyConnectionThread(destroyName); destroyConnectionThread.setStarted(false);