netty5/transport/src/main/java/io/netty/channel/SingleThreadEventLoop.java

34 lines
959 B
Java
Raw Normal View History

package io.netty.channel;
import java.util.concurrent.ThreadFactory;
public abstract class SingleThreadEventLoop extends SingleThreadEventExecutor implements EventLoop {
protected SingleThreadEventLoop(ThreadFactory threadFactory) {
super(threadFactory);
}
2012-04-29 10:59:42 +02:00
@Override
2012-04-03 15:19:35 +02:00
public ChannelFuture register(Channel channel) {
if (channel == null) {
throw new NullPointerException("channel");
}
return register(channel, channel.newFuture());
}
@Override
public ChannelFuture register(final Channel channel, final ChannelFuture future) {
if (inEventLoop()) {
channel.unsafe().register(this, future);
} else {
execute(new Runnable() {
@Override
public void run() {
channel.unsafe().register(SingleThreadEventLoop.this, future);
}
});
}
return future;
}
}