public class ThreadPerChannelEventLoopGroup extends AbstractEventExecutorGroup implements EventLoopGroup
限定符 | 构造器和说明 |
---|---|
protected |
ThreadPerChannelEventLoopGroup()
Create a new
ThreadPerChannelEventLoopGroup with no limit in place. |
protected |
ThreadPerChannelEventLoopGroup(int maxChannels)
Create a new
ThreadPerChannelEventLoopGroup . |
protected |
ThreadPerChannelEventLoopGroup(int maxChannels,
java.util.concurrent.ThreadFactory threadFactory,
java.lang.Object... args)
Create a new
ThreadPerChannelEventLoopGroup . |
限定符和类型 | 方法和说明 |
---|---|
boolean |
awaitTermination(long timeout,
java.util.concurrent.TimeUnit unit) |
boolean |
isShutdown() |
boolean |
isShuttingDown()
Returns
true if and only if this executor was started to be
shut down gracefuclly or was shut down. |
boolean |
isTerminated() |
java.util.Iterator<EventExecutor> |
iterator()
Returns a read-only
Iterator over all EventExecutor , which are handled by this
EventExecutorGroup at the time of invoke this method. |
protected ThreadPerChannelEventLoop |
newChild(java.lang.Object... args)
Creates a new
EventLoop . |
EventLoop |
next()
Return the next
EventLoop to use |
ChannelFuture |
register(Channel channel)
|
ChannelFuture |
register(Channel channel,
ChannelPromise promise)
|
void |
shutdown()
已过时。
|
Future<?> |
shutdownGracefully(long quietPeriod,
long timeout,
java.util.concurrent.TimeUnit unit)
Signals this executor that the caller wants the executor to be shut down.
|
Future<?> |
terminationFuture()
Returns the
Future which is notified when this executor has been terminated. |
execute, invokeAll, invokeAll, invokeAny, invokeAny, schedule, schedule, scheduleAtFixedRate, scheduleWithFixedDelay, shutdownGracefully, shutdownNow, submit, submit, submit
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
schedule, schedule, scheduleAtFixedRate, scheduleWithFixedDelay, shutdownGracefully, shutdownNow, submit, submit, submit
protected 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
on the register(Channel)
and
register(Channel, ChannelPromise)
method.
Use 0
to use no limitprotected ThreadPerChannelEventLoopGroup(int maxChannels, java.util.concurrent.ThreadFactory threadFactory, java.lang.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
on the register(Channel)
and
register(Channel, ChannelPromise)
method.
Use 0
to use no limitthreadFactory
- the ThreadFactory
used to create new Thread
instances that handle the
registered Channel
sargs
- arguments which will passed to each newChild(Object...)
call.protected ThreadPerChannelEventLoop newChild(java.lang.Object... args) throws java.lang.Exception
EventLoop
. The default implementation creates a new ThreadPerChannelEventLoop
.java.lang.Exception
public java.util.Iterator<EventExecutor> iterator()
EventExecutorGroup
Iterator
over all EventExecutor
, which are handled by this
EventExecutorGroup
at the time of invoke this method.iterator
在接口中 EventExecutorGroup
iterator
在接口中 java.lang.Iterable<EventExecutor>
public EventLoop next()
EventLoopGroup
EventLoop
to usenext
在接口中 EventLoopGroup
next
在接口中 EventExecutorGroup
public Future<?> shutdownGracefully(long quietPeriod, long timeout, java.util.concurrent.TimeUnit unit)
EventExecutorGroup
EventExecutorGroup.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.shutdownGracefully
在接口中 EventExecutorGroup
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 timeout
EventExecutorGroup.terminationFuture()
public Future<?> terminationFuture()
EventExecutorGroup
Future
which is notified when this executor has been terminated.terminationFuture
在接口中 EventExecutorGroup
@Deprecated public void shutdown()
shutdown
在接口中 EventExecutorGroup
shutdown
在接口中 java.util.concurrent.ExecutorService
shutdown
在类中 AbstractEventExecutorGroup
public boolean isShuttingDown()
EventExecutorGroup
true
if and only if this executor was started to be
shut down gracefuclly or was shut down.isShuttingDown
在接口中 EventExecutorGroup
public boolean isShutdown()
isShutdown
在接口中 java.util.concurrent.ExecutorService
public boolean isTerminated()
isTerminated
在接口中 java.util.concurrent.ExecutorService
public boolean awaitTermination(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException
awaitTermination
在接口中 java.util.concurrent.ExecutorService
java.lang.InterruptedException
public ChannelFuture register(Channel channel)
EventLoopGroup
Channel
with this EventLoop
. The returned ChannelFuture
will get notified once the registration was complete.register
在接口中 EventLoopGroup
public ChannelFuture register(Channel channel, ChannelPromise promise)
EventLoopGroup
Channel
with this EventLoop
. The passed ChannelFuture
will get notified once the registration was complete and also will get returned.register
在接口中 EventLoopGroup