diff --git a/transport/src/main/java/io/netty/channel/socket/nio/AbstractNioWorker.java b/transport/src/main/java/io/netty/channel/socket/nio/AbstractNioWorker.java index 14ffdc6d99..a5a109d9c1 100644 --- a/transport/src/main/java/io/netty/channel/socket/nio/AbstractNioWorker.java +++ b/transport/src/main/java/io/netty/channel/socket/nio/AbstractNioWorker.java @@ -273,7 +273,9 @@ abstract class AbstractNioWorker implements Worker { @Override public void executeInIoThread(Runnable eventRunnable) { - assert eventQueue.offer(eventRunnable); + boolean added = eventQueue.offer(eventRunnable); + + assert added; // wake up the selector to speed things selector.wakeup(); diff --git a/transport/src/main/java/io/netty/channel/socket/oio/AbstractOioWorker.java b/transport/src/main/java/io/netty/channel/socket/oio/AbstractOioWorker.java index ea773bc442..fb1b403894 100644 --- a/transport/src/main/java/io/netty/channel/socket/oio/AbstractOioWorker.java +++ b/transport/src/main/java/io/netty/channel/socket/oio/AbstractOioWorker.java @@ -90,8 +90,9 @@ abstract class AbstractOioWorker implements Worker @Override public void executeInIoThread(Runnable eventRunnable) { - assert eventQueue.offer(eventRunnable); + boolean added = eventQueue.offer(eventRunnable); + assert added; // as we set the SO_TIMEOUT to 1 second this task will get picked up in 1 second at latest }