diff --git a/src/org/redkale/net/Response.java b/src/org/redkale/net/Response.java index 6a9dc0ba2..9439f80bf 100644 --- a/src/org/redkale/net/Response.java +++ b/src/org/redkale/net/Response.java @@ -178,10 +178,7 @@ public abstract class Response> { this.servlet = null; request.recycle(); if (channel != null) { - try { - if (channel.isOpen()) channel.close(); - } catch (Exception e) { - } + channel.dispose(); channel = null; } this.inited = false; diff --git a/src/org/redkale/net/Transport.java b/src/org/redkale/net/Transport.java index 6d6d19a9d..002e4afd0 100644 --- a/src/org/redkale/net/Transport.java +++ b/src/org/redkale/net/Transport.java @@ -227,7 +227,11 @@ public final class Transport { if (!queue.isEmpty()) { AsyncConnection conn; while ((conn = queue.poll()) != null) { - if (conn.isOpen()) return CompletableFuture.completedFuture(conn); + if (conn.isOpen()) { + return CompletableFuture.completedFuture(conn); + } else { + conn.dispose(); + } } } return AsyncConnection.createTCP(group, sslContext, addr, supportTcpNoDelay(), factory.readTimeoutSeconds, factory.writeTimeoutSeconds);