org.jboss.netty.channel
类 DefaultChannelFuture

java.lang.Object
  继承者 org.jboss.netty.channel.DefaultChannelFuture
所有已实现的接口:
ChannelFuture

public class DefaultChannelFuture
extends java.lang.Object
implements ChannelFuture

ChannelFuture的默认实现.建议使用Channels.future(Channel)Channels.future(Channel, boolean)创建一个新的ChannelFuture而不是直接调用构造方法.


构造方法摘要
DefaultChannelFuture(Channel channel, boolean cancellable)
          创建一个实例.
 
方法摘要
 void addListener(ChannelFutureListener listener)
          添加指定的监听器到该future.当该future完成 ,该监听器会收到通知.如果该future已经完成,指定的监听器也会立刻收到通知.
 ChannelFuture await()
          等待该future完成
 boolean await(long timeoutMillis)
          在指定的时间限制内等待future的完成.
 boolean await(long timeout, java.util.concurrent.TimeUnit unit)
          在指定的时间限制内等待future的完成.
 ChannelFuture awaitUninterruptibly()
          等待该future完成.该方法会捕捉InterruptedException并安静丢弃.
 boolean awaitUninterruptibly(long timeoutMillis)
          在指定的时间限制内等待future的完成.该方法会捕捉InterruptedException并丢弃异常.
 boolean awaitUninterruptibly(long timeout, java.util.concurrent.TimeUnit unit)
          在指定的时间限制内等待future的完成.该方法会捕捉InterruptedException并丢弃异常.
 boolean cancel()
          取消该future关联的I/O操作,如果取消成功则通知所有监听器.
 java.lang.Throwable getCause()
          如果I/O操作失败,则返回导致I/O操作失败的原因.
 Channel getChannel()
          返回该future关联发生I/O操作的Channel.
 boolean isCancelled()
          只有该future被使用ChannelFuture.cancel()方法取消才返回true.
 boolean isDone()
          只有当该future完成了返回true,不管操作是否成功、失败或取消.
 boolean isSuccess()
          只有该future的I/O操作成功完成才返回true.
static boolean isUseDeadLockChecker()
          只有允许死锁检测才返回true.
 void removeListener(ChannelFutureListener listener)
          移除该future里指定的监听器.当该future完成 ,该监听器会收到通知.如果指定的监听器不再关联该future,该方法不做任何事.
 boolean setFailure(java.lang.Throwable cause)
          标识该future为失败并通知所有监听器.
 boolean setProgress(long amount, long current, long total)
          通知实现ChannelFutureProgressListener接口的监听器该操作的进度.
 boolean setSuccess()
          标识该future为成功并通知所有监听器.
static void setUseDeadLockChecker(boolean useDeadLockChecker)
          打开或关闭死锁检测.不建议关闭死锁检测.
 
从类 java.lang.Object 继承的方法
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

DefaultChannelFuture

public DefaultChannelFuture(Channel channel,
                            boolean cancellable)
创建一个实例.

参数:
channel - 关联该future的Channel
cancellable - true表示该future可以被取消
方法详细信息

isUseDeadLockChecker

public static boolean isUseDeadLockChecker()
只有允许死锁检测才返回true.


setUseDeadLockChecker

public static void setUseDeadLockChecker(boolean useDeadLockChecker)
打开或关闭死锁检测.不建议关闭死锁检测. 在你风险评估内才可关闭!


getChannel

public Channel getChannel()
从接口 ChannelFuture 复制的描述
返回该future关联发生I/O操作的Channel.

指定者:
接口 ChannelFuture 中的 getChannel

isDone

public boolean isDone()
从接口 ChannelFuture 复制的描述
只有当该future完成了返回true,不管操作是否成功、失败或取消.

指定者:
接口 ChannelFuture 中的 isDone

isSuccess

public boolean isSuccess()
从接口 ChannelFuture 复制的描述
只有该future的I/O操作成功完成才返回true.

指定者:
接口 ChannelFuture 中的 isSuccess

getCause

public java.lang.Throwable getCause()
从接口 ChannelFuture 复制的描述
如果I/O操作失败,则返回导致I/O操作失败的原因.

指定者:
接口 ChannelFuture 中的 getCause
返回:
失败的原因.如果是成功或还没完成则返回null.

isCancelled

public boolean isCancelled()
从接口 ChannelFuture 复制的描述
只有该future被使用ChannelFuture.cancel()方法取消才返回true.

指定者:
接口 ChannelFuture 中的 isCancelled

addListener

public void addListener(ChannelFutureListener listener)
从接口 ChannelFuture 复制的描述
添加指定的监听器到该future.当该future完成 ,该监听器会收到通知.如果该future已经完成,指定的监听器也会立刻收到通知.

指定者:
接口 ChannelFuture 中的 addListener

removeListener

public void removeListener(ChannelFutureListener listener)
从接口 ChannelFuture 复制的描述
移除该future里指定的监听器.当该future完成 ,该监听器会收到通知.如果指定的监听器不再关联该future,该方法不做任何事.

指定者:
接口 ChannelFuture 中的 removeListener

await

public ChannelFuture await()
                    throws java.lang.InterruptedException
从接口 ChannelFuture 复制的描述
等待该future完成

指定者:
接口 ChannelFuture 中的 await
抛出:
java.lang.InterruptedException - 如果当前线程被打断则抛出异常

await

public boolean await(long timeout,
                     java.util.concurrent.TimeUnit unit)
              throws java.lang.InterruptedException
从接口 ChannelFuture 复制的描述
在指定的时间限制内等待future的完成.

指定者:
接口 ChannelFuture 中的 await
返回:
只有在指定时间限制内完成才返回true
抛出:
java.lang.InterruptedException - 如果当前线程被打断则抛出异常

await

public boolean await(long timeoutMillis)
              throws java.lang.InterruptedException
从接口 ChannelFuture 复制的描述
在指定的时间限制内等待future的完成.

指定者:
接口 ChannelFuture 中的 await
返回:
只有在指定时间限制内完成才返回true
抛出:
java.lang.InterruptedException - 如果当前线程被打断则抛出异常

awaitUninterruptibly

public ChannelFuture awaitUninterruptibly()
从接口 ChannelFuture 复制的描述
等待该future完成.该方法会捕捉InterruptedException并安静丢弃.

指定者:
接口 ChannelFuture 中的 awaitUninterruptibly

awaitUninterruptibly

public boolean awaitUninterruptibly(long timeout,
                                    java.util.concurrent.TimeUnit unit)
从接口 ChannelFuture 复制的描述
在指定的时间限制内等待future的完成.该方法会捕捉InterruptedException并丢弃异常.

指定者:
接口 ChannelFuture 中的 awaitUninterruptibly
返回:
只有在指定时间限制内完成才返回true

awaitUninterruptibly

public boolean awaitUninterruptibly(long timeoutMillis)
从接口 ChannelFuture 复制的描述
在指定的时间限制内等待future的完成.该方法会捕捉InterruptedException并丢弃异常.

指定者:
接口 ChannelFuture 中的 awaitUninterruptibly
返回:
只有在指定时间限制内完成才返回true

setSuccess

public boolean setSuccess()
从接口 ChannelFuture 复制的描述
标识该future为成功并通知所有监听器.

指定者:
接口 ChannelFuture 中的 setSuccess
返回:
只有成功标识了该future为成功才返回true.如果该future已经被标识过成功或失败则返回 false.

setFailure

public boolean setFailure(java.lang.Throwable cause)
从接口 ChannelFuture 复制的描述
标识该future为失败并通知所有监听器.

指定者:
接口 ChannelFuture 中的 setFailure
返回:
只有成功标识了该future为失败才返回true.如果该future已经被标识过成功或失败则返回 false.

cancel

public boolean cancel()
从接口 ChannelFuture 复制的描述
取消该future关联的I/O操作,如果取消成功则通知所有监听器.

指定者:
接口 ChannelFuture 中的 cancel
返回:
只有操作被取消才返回true.如果操作不被取消或已经完成则返回false.

setProgress

public boolean setProgress(long amount,
                           long current,
                           long total)
从接口 ChannelFuture 复制的描述
通知实现ChannelFutureProgressListener接口的监听器该操作的进度. 请注意如果该future已经完成则该方法不会做任何事直接返回false.

指定者:
接口 ChannelFuture 中的 setProgress
返回:
true if and only if notification was made.