public abstract class AbstractResponseFuture<V> extends Object implements ResponseFuture<V>
| 限定符和类型 | 字段和说明 |
|---|---|
protected static CancellationException |
CANCELLATION_CAUSE |
protected Throwable |
cause
异常
|
protected long |
doneTime
Future完成的时间
|
protected long |
genTime
Future生成时间
|
protected Object |
result
返回的结果
|
protected long |
sentTime
Future已发送时间
|
protected int |
timeout
用户设置的超时时间
|
| 构造器和说明 |
|---|
AbstractResponseFuture(int timeout)
构造函数
|
| 限定符和类型 | 方法和说明 |
|---|---|
protected boolean |
await(long timeout,
TimeUnit unit) |
boolean |
cancel(boolean mayInterruptIfRunning) |
protected TimeoutException |
clientTimeoutException() |
V |
get() |
V |
get(long timeout,
TimeUnit unit) |
long |
getElapsedTime()
查看future耗时
|
protected abstract V |
getNow()
解析结果,拿到返回值
|
boolean |
isCancelled() |
boolean |
isDone() |
abstract void |
notifyListeners()
notify all listener.
|
protected abstract void |
releaseIfNeed(Object result)
异步的情况下,如果返回,将释放内容
|
protected void |
setDoneTime()
记录结束时间
|
void |
setFailure(Throwable cause)
设置异常
|
void |
setSentTime()
设置已发送时间
|
void |
setSuccess(V result)
设置正常返回结果
|
protected boolean |
setSuccess0(V result) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddListener, addListenersprotected static final CancellationException CANCELLATION_CAUSE
protected volatile Object result
protected volatile Throwable cause
protected final int timeout
protected final long genTime
protected volatile long sentTime
protected volatile long doneTime
public V get() throws InterruptedException, ExecutionException
get 在接口中 Future<V>InterruptedExceptionExecutionExceptionpublic V get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException
get 在接口中 Future<V>InterruptedExceptionExecutionExceptionTimeoutExceptionprotected TimeoutException clientTimeoutException()
protected abstract V getNow() throws ExecutionException
ExecutionException - 执行异常protected abstract void releaseIfNeed(Object result)
result - 返回值protected boolean await(long timeout,
TimeUnit unit)
throws InterruptedException
public void setSuccess(V result)
result - 正常返回值protected boolean setSuccess0(V result)
public void setFailure(Throwable cause)
cause - 异常类型public boolean isCancelled()
isCancelled 在接口中 Future<V>public abstract void notifyListeners()
public void setSentTime()
protected void setDoneTime()
public long getElapsedTime()
Copyright © 2008–2018 The Ant Financial. All rights reserved.