类 SettableListenableFuture<T>
- java.lang.Object
- org.springframework.util.concurrent.SettableListenableFuture<T>
- 所有已实现的接口:
Future<T>
,ListenableFuture<T>
public class SettableListenableFuture<T> extends Object implements ListenableFuture<T>
AListenableFuture
whose value can be set viaset(Object)
orsetException(Throwable)
. It may also get cancelled.Inspired by
com.google.common.util.concurrent.SettableFuture
.- 从以下版本开始:
- 4.1
- 作者:
- Mattias Severson, Rossen Stoyanchev, Juergen Hoeller
构造器概要
构造器 构造器 说明 SettableListenableFuture()
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 void
addCallback(ListenableFutureCallback<? super T> callback)
Register the givenListenableFutureCallback
.void
addCallback(SuccessCallback<? super T> successCallback, FailureCallback failureCallback)
Java 8 lambda-friendly alternative with success and failure callbacks.boolean
cancel(boolean mayInterruptIfRunning)
T
get()
Retrieve the value.T
get(long timeout, TimeUnit unit)
Retrieve the value.protected void
interruptTask()
Subclasses can override this method to implement interruption of the future's computation.boolean
isCancelled()
boolean
isDone()
boolean
set(T value)
Set the value of this future.boolean
setException(Throwable exception)
Set the exception of this future.
构造器详细资料
SettableListenableFuture
public SettableListenableFuture()
方法详细资料
set
public boolean set(T value)
Set the value of this future. This method will returntrue
if the value was set successfully, orfalse
if the future has already been set or cancelled.- 参数:
value
- the value that will be set- 返回:
true
if the value was successfully set, elsefalse
setException
public boolean setException(Throwable exception)
Set the exception of this future. This method will returntrue
if the exception was set successfully, orfalse
if the future has already been set or cancelled.- 参数:
exception
- the value that will be set- 返回:
true
if the exception was successfully set, elsefalse
addCallback
public void addCallback(ListenableFutureCallback<? super T> callback)
从接口复制的说明:ListenableFuture
Register the givenListenableFutureCallback
.- 指定者:
addCallback
在接口中ListenableFuture<T>
- 参数:
callback
- the callback to register
addCallback
public void addCallback(SuccessCallback<? super T> successCallback, FailureCallback failureCallback)
从接口复制的说明:ListenableFuture
Java 8 lambda-friendly alternative with success and failure callbacks.- 指定者:
addCallback
在接口中ListenableFuture<T>
- 参数:
successCallback
- the success callbackfailureCallback
- the failure callback
isCancelled
public boolean isCancelled()
- 指定者:
isCancelled
在接口中Future<T>
get
public T get() throws InterruptedException, ExecutionException
Retrieve the value.This method returns the value if it has been set via
set(Object)
, throws anExecutionException
if an exception has been set viasetException(Throwable)
, or throws aCancellationException
if the future has been cancelled.- 指定者:
get
在接口中Future<T>
- 返回:
- the value associated with this future
- 抛出:
InterruptedException
ExecutionException
get
public T get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException
Retrieve the value.This method returns the value if it has been set via
set(Object)
, throws anExecutionException
if an exception has been set viasetException(Throwable)
, or throws aCancellationException
if the future has been cancelled.- 指定者:
get
在接口中Future<T>
- 参数:
timeout
- the maximum time to waitunit
- the unit of the timeout argument- 返回:
- the value associated with this future
- 抛出:
InterruptedException
ExecutionException
TimeoutException
interruptTask
protected void interruptTask()
Subclasses can override this method to implement interruption of the future's computation. The method is invoked automatically by a successful call tocancel(true)
.The default implementation is empty.