public abstract class AbstractEventExecutor extends java.util.concurrent.AbstractExecutorService implements EventExecutor
EventExecutor implementations.| Modifier and Type | Field and Description |
|---|---|
(package private) static long |
DEFAULT_SHUTDOWN_QUIET_PERIOD |
(package private) static long |
DEFAULT_SHUTDOWN_TIMEOUT |
private static InternalLogger |
logger |
private EventExecutorGroup |
parent |
private java.util.Collection<EventExecutor> |
selfCollection |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractEventExecutor() |
protected |
AbstractEventExecutor(EventExecutorGroup parent) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
inEventLoop()
Calls
EventExecutor.inEventLoop(Thread) with Thread.currentThread() as argument |
java.util.Iterator<EventExecutor> |
iterator() |
<V> Future<V> |
newFailedFuture(java.lang.Throwable cause)
Create a new
Future which is marked as failed already. |
<V> ProgressivePromise<V> |
newProgressivePromise()
Create a new
ProgressivePromise. |
<V> Promise<V> |
newPromise()
Return a new
Promise. |
<V> Future<V> |
newSucceededFuture(V result)
Create a new
Future which is marked as succeeded already. |
protected <T> java.util.concurrent.RunnableFuture<T> |
newTaskFor(java.util.concurrent.Callable<T> callable) |
protected <T> java.util.concurrent.RunnableFuture<T> |
newTaskFor(java.lang.Runnable runnable,
T value) |
EventExecutor |
next()
Returns a reference to itself.
|
EventExecutorGroup |
parent()
Return the
EventExecutorGroup which is the parent of this EventExecutor, |
protected static void |
safeExecute(java.lang.Runnable task)
Try to execute the given
Runnable and just log if it throws a Throwable. |
<V> ScheduledFuture<V> |
schedule(java.util.concurrent.Callable<V> callable,
long delay,
java.util.concurrent.TimeUnit unit) |
ScheduledFuture<?> |
schedule(java.lang.Runnable command,
long delay,
java.util.concurrent.TimeUnit unit) |
ScheduledFuture<?> |
scheduleAtFixedRate(java.lang.Runnable command,
long initialDelay,
long period,
java.util.concurrent.TimeUnit unit) |
ScheduledFuture<?> |
scheduleWithFixedDelay(java.lang.Runnable command,
long initialDelay,
long delay,
java.util.concurrent.TimeUnit unit) |
abstract void |
shutdown()
Deprecated.
|
Future<?> |
shutdownGracefully()
Shortcut method for
EventExecutorGroup.shutdownGracefully(long, long, TimeUnit) with sensible default values. |
java.util.List<java.lang.Runnable> |
shutdownNow()
Deprecated.
|
<T> Future<T> |
submit(java.util.concurrent.Callable<T> task) |
Future<?> |
submit(java.lang.Runnable task) |
<T> Future<T> |
submit(java.lang.Runnable task,
T result) |
invokeAll, invokeAll, invokeAny, invokeAnyclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitinEventLoopisShuttingDown, shutdownGracefully, terminationFutureprivate static final InternalLogger logger
static final long DEFAULT_SHUTDOWN_QUIET_PERIOD
static final long DEFAULT_SHUTDOWN_TIMEOUT
private final EventExecutorGroup parent
private final java.util.Collection<EventExecutor> selfCollection
protected AbstractEventExecutor()
protected AbstractEventExecutor(EventExecutorGroup parent)
public EventExecutorGroup parent()
EventExecutorEventExecutorGroup which is the parent of this EventExecutor,parent in interface EventExecutorpublic EventExecutor next()
EventExecutornext in interface EventExecutornext in interface EventExecutorGrouppublic boolean inEventLoop()
EventExecutorEventExecutor.inEventLoop(Thread) with Thread.currentThread() as argumentinEventLoop in interface EventExecutorpublic java.util.Iterator<EventExecutor> iterator()
iterator in interface EventExecutorGroupiterator in interface java.lang.Iterable<EventExecutor>public Future<?> shutdownGracefully()
EventExecutorGroupEventExecutorGroup.shutdownGracefully(long, long, TimeUnit) with sensible default values.shutdownGracefully in interface EventExecutorGroupEventExecutorGroup.terminationFuture()@Deprecated public abstract void shutdown()
EventExecutorGroup.shutdownGracefully(long, long, TimeUnit) or shutdownGracefully() instead.shutdown in interface EventExecutorGroupshutdown in interface java.util.concurrent.ExecutorService@Deprecated public java.util.List<java.lang.Runnable> shutdownNow()
EventExecutorGroup.shutdownGracefully(long, long, TimeUnit) or shutdownGracefully() instead.shutdownNow in interface EventExecutorGroupshutdownNow in interface java.util.concurrent.ExecutorServicepublic <V> Promise<V> newPromise()
EventExecutorPromise.newPromise in interface EventExecutorpublic <V> ProgressivePromise<V> newProgressivePromise()
EventExecutorProgressivePromise.newProgressivePromise in interface EventExecutorpublic <V> Future<V> newSucceededFuture(V result)
EventExecutorFuture which is marked as succeeded already. So Future.isSuccess()
will return true. All FutureListener added to it will be notified directly. Also
every call of blocking methods will just return without blocking.newSucceededFuture in interface EventExecutorpublic <V> Future<V> newFailedFuture(java.lang.Throwable cause)
EventExecutorFuture which is marked as failed already. So Future.isSuccess()
will return false. All FutureListener added to it will be notified directly. Also
every call of blocking methods will just return without blocking.newFailedFuture in interface EventExecutorpublic Future<?> submit(java.lang.Runnable task)
submit in interface EventExecutorGroupsubmit in interface java.util.concurrent.ExecutorServicesubmit in class java.util.concurrent.AbstractExecutorServicepublic <T> Future<T> submit(java.lang.Runnable task, T result)
submit in interface EventExecutorGroupsubmit in interface java.util.concurrent.ExecutorServicesubmit in class java.util.concurrent.AbstractExecutorServicepublic <T> Future<T> submit(java.util.concurrent.Callable<T> task)
submit in interface EventExecutorGroupsubmit in interface java.util.concurrent.ExecutorServicesubmit in class java.util.concurrent.AbstractExecutorServiceprotected final <T> java.util.concurrent.RunnableFuture<T> newTaskFor(java.lang.Runnable runnable,
T value)
newTaskFor in class java.util.concurrent.AbstractExecutorServiceprotected final <T> java.util.concurrent.RunnableFuture<T> newTaskFor(java.util.concurrent.Callable<T> callable)
newTaskFor in class java.util.concurrent.AbstractExecutorServicepublic ScheduledFuture<?> schedule(java.lang.Runnable command, long delay, java.util.concurrent.TimeUnit unit)
schedule in interface EventExecutorGroupschedule in interface java.util.concurrent.ScheduledExecutorServicepublic <V> ScheduledFuture<V> schedule(java.util.concurrent.Callable<V> callable, long delay, java.util.concurrent.TimeUnit unit)
schedule in interface EventExecutorGroupschedule in interface java.util.concurrent.ScheduledExecutorServicepublic ScheduledFuture<?> scheduleAtFixedRate(java.lang.Runnable command, long initialDelay, long period, java.util.concurrent.TimeUnit unit)
scheduleAtFixedRate in interface EventExecutorGroupscheduleAtFixedRate in interface java.util.concurrent.ScheduledExecutorServicepublic ScheduledFuture<?> scheduleWithFixedDelay(java.lang.Runnable command, long initialDelay, long delay, java.util.concurrent.TimeUnit unit)
scheduleWithFixedDelay in interface EventExecutorGroupscheduleWithFixedDelay in interface java.util.concurrent.ScheduledExecutorServiceprotected static void safeExecute(java.lang.Runnable task)
Runnable and just log if it throws a Throwable.