public final class NioEventLoop extends SingleThreadEventLoop
SingleThreadEventLoop实现注册Channel的Selector和这些事件循环中的多重复合。
DEFAULT_MAX_PENDING_TASKS| Modifier and Type | Method and Description |
|---|---|
protected void |
cleanup()
无所作为,子类可能会覆盖
|
int |
getIoRatio()
返回在事件循环中花费I / O所需时间的百分比。
|
protected java.util.Queue<java.lang.Runnable> |
newTaskQueue(int maxPendingTasks)
创建一个新的
Queue ,它将保存要执行的任务。
|
int |
pendingTasks()
返回待处理任务的数量。
|
protected java.lang.Runnable |
pollTask() |
void |
rebuildSelector()
用新创建的
Selector替换当前
Selector这个事件循环,以解决臭名昭着的100%CPU bug。
|
void |
register(java.nio.channels.SelectableChannel ch, int interestOps, NioTask<?> task)
将任意
SelectableChannel (不一定由Netty创建)注册到此事件循环的
Selector 。
|
protected void |
run() |
java.nio.channels.spi.SelectorProvider |
selectorProvider()
返回此 SelectorProvider使用的SelectorProvider以获取Selector 。
|
void |
setIoRatio(int ioRatio)
设置在事件循环中花费I / O所需时间的百分比。
|
protected void |
wakeup(boolean inEventLoop) |
afterRunningAllTasks, executeAfterEventLoopIteration, hasTasks, next, parent, register, register, register, wakesUpForTaskaddShutdownHook, addTask, awaitTermination, confirmShutdown, delayNanos, execute, inEventLoop, interruptThread, invokeAll, invokeAll, invokeAny, invokeAny, isShutdown, isShuttingDown, isTerminated, newTaskQueue, peekTask, pollTaskFrom, reject, reject, removeShutdownHook, removeTask, runAllTasks, runAllTasks, runAllTasksFrom, shutdown, shutdownGracefully, takeTask, terminationFuture, threadProperties, updateLastExecutionTimecancelScheduledTasks, hasScheduledTasks, nanoTime, nextScheduledTaskNano, pollScheduledTask, pollScheduledTask, schedule, schedule, scheduleAtFixedRate, scheduleWithFixedDelayinEventLoop, iterator, newFailedFuture, newProgressivePromise, newPromise, newSucceededFuture, newTaskFor, newTaskFor, safeExecute, shutdownGracefully, shutdownNow, submit, submit, submitclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitinEventLoop, inEventLoop, newFailedFuture, newProgressivePromise, newPromise, newSucceededFutureisShuttingDown, iterator, schedule, schedule, scheduleAtFixedRate, scheduleWithFixedDelay, shutdown, shutdownGracefully, shutdownGracefully, shutdownNow, submit, submit, submit, terminationFuturepublic java.nio.channels.spi.SelectorProvider selectorProvider()
SelectorProvider使用的SelectorProvider以获得Selector 。
protected java.util.Queue<java.lang.Runnable> newTaskQueue(int maxPendingTasks)
SingleThreadEventExecutor
Queue ,它将保存要执行的任务。
这个默认的实现将返回一个LinkedBlockingQueue但是如果你的子类SingleThreadEventExecutor不会在这个Queue上做任何阻塞调用,它可能对@Override有意义的,并返回一些不支持阻塞操作的更高性能的实现。
public int pendingTasks()
SingleThreadEventExecutor
pendingTasks在课堂上
SingleThreadEventLoop
public void register(java.nio.channels.SelectableChannel ch,
int interestOps,
NioTask<?> task)
SelectableChannel (不一定由Netty创建)注册到此事件循环的Selector 。
一旦指定的SelectableChannel注册,指定的task将这一事件循环被执行时SelectableChannel已准备就绪。
public int getIoRatio()
public void setIoRatio(int ioRatio)
50 ,这意味着事件循环将尝试花费I / O的时间与非I / O任务相同的时间。
public void rebuildSelector()
Selector替换当前的
Selector这个事件循环,以解决臭名昭着的100%的CPU bug。
protected void run()
run在课堂上
SingleThreadEventExecutor
protected void cleanup()
SingleThreadEventExecutor
cleanup在课堂上
SingleThreadEventExecutor
protected java.lang.Runnable pollTask()
pollTask在课堂上
SingleThreadEventExecutor
Queue.poll()
protected void wakeup(boolean inEventLoop)
wakeup在课堂上
SingleThreadEventExecutor
Copyright © 2008–2018 The Netty Project. All rights reserved.