netty5/transport/src/main/java/io/netty/channel/nio
Hyangtack Lee f44f3e7926 NioEventLoop ensures that all submitted tasks are executed immediately.
Motivation:
If a task was submitted when wakenUp value was true, the task didn't get a chance to call Selector#wakeup.
So we need to check task queue again before executing select operation. If we don't, the task might be pended until select operation was timed out.
It might be pended until idle timeout if IdleStateHandler existed in pipeline.

Modifications:
Execute Selector#select in a non-blocking manner if there's a task submitted when wakenUp value was true.

Result:
Every tasks in NioEventLoop will not be pended.
2016-05-17 07:43:46 +02:00
..
AbstractNioByteChannel.java Make OIO/NIO/EPOLL autoReadClear consistent 2016-04-06 12:32:14 -07:00
AbstractNioChannel.java Fix potential assertion error introduced by 0bc93dd 2016-04-08 09:44:44 -07:00
AbstractNioMessageChannel.java Make OIO/NIO/EPOLL autoReadClear consistent 2016-04-06 12:32:14 -07:00
NioEventLoop.java NioEventLoop ensures that all submitted tasks are executed immediately. 2016-05-17 07:43:46 +02:00
NioEventLoopGroup.java Remove EventExecutor.children 2016-05-13 18:17:22 -07:00
NioTask.java Move non socket specific stuff out of the socket package 2013-02-01 09:10:28 +01:00
package-info.java Move non socket specific stuff out of the socket package 2013-02-01 09:10:28 +01:00
SelectedSelectionKeySet.java Replace the sun.nio.ch.SelectorImpl.selectedKeys with faster one 2013-06-11 00:00:55 +09:00