From 3e408e535cd494d8837774c4ce7a84997de2cc59 Mon Sep 17 00:00:00 2001 From: Redkale <8730487+redkale@users.noreply.github.com> Date: Sat, 9 Jan 2021 15:41:35 +0800 Subject: [PATCH] --- src/org/redkale/net/http/WebSocketRunner.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/org/redkale/net/http/WebSocketRunner.java b/src/org/redkale/net/http/WebSocketRunner.java index f47a84ba9..5c323febe 100644 --- a/src/org/redkale/net/http/WebSocketRunner.java +++ b/src/org/redkale/net/http/WebSocketRunner.java @@ -302,9 +302,9 @@ class WebSocketRunner implements Runnable { if (t != null && context.getLogger().isLoggable(Level.FINER)) { context.getLogger().log(Level.FINER, "WebSocket sendMessage abort, force to close channel, live " + (System.currentTimeMillis() - webSocket.getCreatetime()) / 1000 + " seconds", t); } - } - return futureResult.whenComplete((r, t) -> { + int ts = webSocket._channel.getWriteTimeoutSeconds(); + return futureResult.orTimeout(ts > 0 ? ts : 6, TimeUnit.SECONDS).whenComplete((r, t) -> { WriteEntry entry = writeQueue.poll(); if (entry != null) { webSocket._channel.write(entry.writeBuffers, entry.writeBuffers, entry.writeHandler);