public class ThreadPerChannelEventLoopGroup extends AbstractEventLoopGroup
| Modifier | Constructor and Description |
|---|---|
protected |
ThreadPerChannelEventLoopGroup()
Create a new
ThreadPerChannelEventLoopGroup with no limit in place. |
protected |
ThreadPerChannelEventLoopGroup(int maxChannels)
Create a new
ThreadPerChannelEventLoopGroup. |
protected |
ThreadPerChannelEventLoopGroup(int maxChannels,
Executor executor,
Object... args)
Create a new
ThreadPerChannelEventLoopGroup. |
protected |
ThreadPerChannelEventLoopGroup(int maxChannels,
ThreadFactory threadFactory,
Object... args)
Create a new
ThreadPerChannelEventLoopGroup. |
| Modifier and Type | Method and Description |
|---|---|
boolean |
awaitTermination(long timeout,
TimeUnit unit) |
<E extends EventExecutor> |
children()
Returns the unmodifiable set of
EventExecutors managed by this EventExecutorGroup. |
boolean |
isShutdown() |
boolean |
isShuttingDown()
Returns
true if and only if all EventExecutors managed by this EventExecutorGroup
are being shut down gracefuclly or was shut down. |
boolean |
isTerminated() |
protected EventLoop |
newChild(Object... args)
Creates a new
EventLoop. |
EventLoop |
next()
Returns one of the
EventExecutors managed by this EventExecutorGroup. |
void |
shutdown()
Deprecated.
|
Future<?> |
shutdownGracefully(long quietPeriod,
long timeout,
TimeUnit unit)
Signals this executor that the caller wants the executor to be shut down.
|
Future<?> |
terminationFuture()
Returns the
Future which is notified when all EventExecutors managed by this
EventExecutorGroup have been terminated. |
execute, invokeAll, invokeAll, invokeAny, invokeAny, schedule, schedule, scheduleAtFixedRate, scheduleWithFixedDelay, shutdownGracefully, shutdownNow, submit, submit, submitclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitschedule, schedule, scheduleAtFixedRate, scheduleWithFixedDelay, shutdownGracefully, shutdownNow, submit, submit, submitinvokeAll, invokeAll, invokeAny, invokeAnyprotected ThreadPerChannelEventLoopGroup()
ThreadPerChannelEventLoopGroup with no limit in place.protected ThreadPerChannelEventLoopGroup(int maxChannels)
ThreadPerChannelEventLoopGroup.maxChannels - the maximum number of channels to handle with this instance. Once you try to register
a new Channel and the maximum is exceed it will throw an
ChannelException. Use 0 to use no limitprotected ThreadPerChannelEventLoopGroup(int maxChannels,
ThreadFactory threadFactory,
Object... args)
ThreadPerChannelEventLoopGroup.maxChannels - the maximum number of channels to handle with this instance. Once you try to register
a new Channel and the maximum is exceed it will throw an
ChannelException. Use 0 to use no limitthreadFactory - the ThreadFactory used to create new Thread instances that handle the
registered Channelsargs - arguments which will passed to each newChild(Object...) call.protected ThreadPerChannelEventLoopGroup(int maxChannels,
Executor executor,
Object... args)
ThreadPerChannelEventLoopGroup.maxChannels - the maximum number of channels to handle with this instance. Once you try to register
a new Channel and the maximum is exceed it will throw an
ChannelException. Use 0 to use no limitexecutor - the Executor used to create new Thread instances that handle the
registered Channelsargs - arguments which will passed to each newChild(Object...) call.public <E extends EventExecutor> Set<E> children()
EventExecutorGroupEventExecutors managed by this EventExecutorGroup.public EventLoop next()
EventExecutorGroupEventExecutors managed by this EventExecutorGroup.next in interface EventLoopGroupnext in interface EventExecutorGroupnext in class AbstractEventLoopGrouppublic Future<?> shutdownGracefully(long quietPeriod, long timeout, TimeUnit unit)
EventExecutorGroupEventExecutorGroup.isShuttingDown() starts to return true, and the executor prepares to shut itself down.
Unlike EventExecutorGroup.shutdown(), graceful shutdown ensures that no tasks are submitted for 'the quiet period'
(usually a couple seconds) before it shuts itself down. If a task is submitted during the quiet period,
it is guaranteed to be accepted and the quiet period will start over.quietPeriod - the quiet period as described in the documentationtimeout - the maximum amount of time to wait until the executor is EventExecutorGroup.shutdown()
regardless if a task was submitted during the quiet periodunit - the unit of quietPeriod and timeoutEventExecutorGroup.terminationFuture()public Future<?> terminationFuture()
EventExecutorGroupFuture which is notified when all EventExecutors managed by this
EventExecutorGroup have been terminated.@Deprecated public void shutdown()
shutdown in interface EventExecutorGroupshutdown in interface ExecutorServiceshutdown in class AbstractEventExecutorGrouppublic boolean isShuttingDown()
EventExecutorGrouptrue if and only if all EventExecutors managed by this EventExecutorGroup
are being shut down gracefuclly or was shut down.public boolean isShutdown()
public boolean isTerminated()
public boolean awaitTermination(long timeout,
TimeUnit unit)
throws InterruptedException
InterruptedExceptionCopyright © 2008–2013 The Netty Project. All rights reserved.