修复单个WebSocket并发问题

This commit is contained in:
Redkale
2018-01-15 14:50:03 +08:00
parent c92d17abbc
commit 0ee5b911d2

View File

@@ -269,12 +269,13 @@ class WebSocketRunner implements Runnable {
ByteBuffer[] buffers = entry.packet.sendBuffers != null ? entry.packet.duplicateSendBuffers() : entry.packet.encode(context.getBufferSupplier());
lastSendTime = System.currentTimeMillis();
channel.write(buffers, buffers, this);
} else {
writing.set(false);
}
} catch (Exception e) {
context.getLogger().log(Level.WARNING, "WebSocket sendMessage abort on rewrite, force to close channel, live " + (System.currentTimeMillis() - webSocket.getCreatetime()) / 1000 + " seconds", e);
closeRunner(RETCODE_SENDEXCEPTION, "websocket send message failed on rewrite");
}
writing.set(false);
}
@Override