public class DefaultPromise<V> extends AbstractFuture<V> implements Promise<V>
Modifier | Constructor and Description |
---|---|
protected |
DefaultPromise()
执行人的期望见
executor() 。
|
|
DefaultPromise(EventExecutor executor)
创建一个新的实例。
|
Modifier and Type | Method and Description |
---|---|
Promise<V> |
addListener(GenericFutureListener<? extends Future<? super V>> listener)
将指定的侦听器添加到此将来。
|
Promise<V> |
addListeners(GenericFutureListener<? extends Future<? super V>>... listeners)
将指定的侦听器添加到此将来。
|
Promise<V> |
await()
等待这个未来的完成。
|
boolean |
await(long timeoutMillis)
等待这个未来在规定的时限内完成。
|
boolean |
await(long timeout, java.util.concurrent.TimeUnit unit)
等待这个未来在规定的时限内完成。
|
Promise<V> |
awaitUninterruptibly()
等待这个未来不中断地完成。
|
boolean |
awaitUninterruptibly(long timeoutMillis)
等待这个未来在规定的时间内完成而不会中断。
|
boolean |
awaitUninterruptibly(long timeout, java.util.concurrent.TimeUnit unit)
等待这个未来在规定的时间内完成而不会中断。
|
boolean |
cancel(boolean mayInterruptIfRunning)
如果取消成功,将会以
CancellationException 失败。
|
java.lang.Throwable |
cause()
如果I / O操作失败,则返回失败的I / O操作的原因。
|
protected void |
checkDeadLock() |
protected EventExecutor |
executor()
当这个承诺完成时,让执行者用来通知监听者。
|
V |
getNow()
无阻塞地返回结果。
|
boolean |
isCancellable()
返回
true 当且仅当该操作可通过取消
Future.cancel(boolean) 。
|
boolean |
isCancelled() |
boolean |
isDone() |
boolean |
isSuccess()
当且仅当I / O操作成功完成时才返回
true 。
|
protected static void |
notifyListener(EventExecutor eventExecutor, Future<?> future, GenericFutureListener<?> listener)
通知听众未来已完成。
|
Promise<V> |
removeListener(GenericFutureListener<? extends Future<? super V>> listener)
从此将来删除指定侦听器的第一个匹配项。
|
Promise<V> |
removeListeners(GenericFutureListener<? extends Future<? super V>>... listeners)
为将来的每个听众删除第一个匹配项。
|
Promise<V> |
setFailure(java.lang.Throwable cause)
将这个未来标志为失败并通知所有听众。
|
Promise<V> |
setSuccess(V result)
将这个未来标志为成功并通知所有听众。
|
boolean |
setUncancellable()
使这个未来无法取消。
|
Promise<V> |
sync()
等待这个未来,直到完成,并且在这个未来失败的时候重新引发失败的原因。
|
Promise<V> |
syncUninterruptibly()
等待这个未来,直到完成,并且在这个未来失败的时候重新引发失败的原因。
|
java.lang.String |
toString() |
protected java.lang.StringBuilder |
toStringBuilder() |
boolean |
tryFailure(java.lang.Throwable cause)
将这个未来标志为失败并通知所有听众。
|
boolean |
trySuccess(V result)
将这个未来标志为成功并通知所有听众。
|
get, get
public DefaultPromise(EventExecutor executor)
EventExecutor.newPromise()
来创造新的承诺
executor
- EventExecutor
用于在完成后通知承诺。
假定这个执行者将防止StackOverflowError
例外。
如果堆栈深度超过阈值,执行程序可以通过执行Runnable
来避免StackOverflowError
。
protected DefaultPromise()
executor()
。
public Promise<V> setSuccess(V result)
Promise
复制的描述
IllegalStateException
。
setSuccess
,界面
Promise<V>
public boolean trySuccess(V result)
Promise
trySuccess
在界面
Promise<V>
true
当且仅当成功标记这个未来。
否则false
因为这个未来已经被标记为成功或失败。
public Promise<V> setFailure(java.lang.Throwable cause)
Promise
IllegalStateException
。
setFailure
,界面
Promise<V>
public boolean tryFailure(java.lang.Throwable cause)
Promise
tryFailure
接口
Promise<V>
true
当且仅当成功将这个未来标记为失败。
否则false
因为这个未来已经被标记为成功或失败。
public boolean setUncancellable()
Promise
setUncancellable
接口
Promise<V>
true
当且仅当成功地将这个未来标记为不可撤销或已经完成而未被取消。
false
如果这个未来已经被取消了。
public boolean isSuccess()
Future
true
。
public boolean isCancellable()
Future
true
当且仅当该操作可通过取消
Future.cancel(boolean)
。
public java.lang.Throwable cause()
Future
null
如果成功或未来尚未完成。
public Promise<V> addListener(GenericFutureListener<? extends Future<? super V>> listener)
Future
addListener
,界面
Promise<V>
public Promise<V> addListeners(GenericFutureListener<? extends Future<? super V>>... listeners)
Future
addListeners
接口
Promise<V>
public Promise<V> removeListener(GenericFutureListener<? extends Future<? super V>> listener)
Future
removeListener
,界面
Promise<V>
public Promise<V> removeListeners(GenericFutureListener<? extends Future<? super V>>... listeners)
Future
removeListeners
,界面
Promise<V>
public Promise<V> awaitUninterruptibly()
Future
InterruptedException
并以InterruptedException
提示方式丢弃它。
awaitUninterruptibly
接口
Promise<V>
public boolean await(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException
Future
true
java.lang.InterruptedException
- 如果当前线程中断
public boolean await(long timeoutMillis) throws java.lang.InterruptedException
Future
true
当且仅当未来是在规定的期限内完成
java.lang.InterruptedException
- 如果当前线程中断
public boolean awaitUninterruptibly(long timeout, java.util.concurrent.TimeUnit unit)
Future
InterruptedException
并以静默方式丢弃它。
true
当且仅当未来是在规定的期限内完成
public boolean awaitUninterruptibly(long timeoutMillis)
Future
InterruptedException
并以静默方式丢弃它。
true
当且仅当未来是在规定的期限内完成
public V getNow()
Future
null
。
由于null
值可能用于标记未来成功,因此您还需要检查未来是否真的用Future.isDone()
完成,而不是在返回的null
值上进行中继。
public boolean cancel(boolean mayInterruptIfRunning)
CancellationException
失败。
cancel
在界面
java.util.concurrent.Future<V>
mayInterruptIfRunning
- 此值在此实现中不起作用。
public boolean isCancelled()
isCancelled
,界面
java.util.concurrent.Future<V>
public boolean isDone()
isDone
接口
java.util.concurrent.Future<V>
public Promise<V> sync() throws java.lang.InterruptedException
Future
public Promise<V> syncUninterruptibly()
Future
syncUninterruptibly
接口
Promise<V>
public java.lang.String toString()
toString
在课堂
java.lang.Object
protected java.lang.StringBuilder toStringBuilder()
protected EventExecutor executor()
假定这个执行者将防止StackOverflowError
例外。 如果堆栈深度超过阈值,执行程序可以通过执行Runnable
来避免StackOverflowError
。
protected void checkDeadLock()
protected static void notifyListener(EventExecutor eventExecutor, Future<?> future, GenericFutureListener<?> listener)
此方法的固定深度为MAX_LISTENER_STACK_DEPTH
,将限制递归以阻止StackOverflowError
并且将在超过此阈值后停止通知侦听器。
eventExecutor
- 执行者用来通知聆听者
listener
。
future
- 完成的未来。
listener
- 听众通知。
Copyright © 2008–2018 The Netty Project. All rights reserved.