美文网首页
JavaNIO-通道08 SelectableChannel接口

JavaNIO-通道08 SelectableChannel接口

作者: 贪睡的企鹅 | 来源:发表于2019-07-25 20:29 被阅读0次

SelectableChannel接口结构

image

SelectableChannel 接口

用来表示可以被注册到选择器中的通道

/**
 * 可以被注册到选择器中的通道
 */

public abstract class SelectableChannel
        extends AbstractInterruptibleChannel
        implements Channel {

    /**
     * 实例化一个SelectableChannel
     */
    protected SelectableChannel() {
    }

    /**
     * 返回创建此通道的提供程序。
     */
    public abstract SelectorProvider provider();

    /**
     * 返回一个操作集,标识此通道所支持的事件
     */
    public abstract int validOps();

    /**
     * 判断当前通道是否被注册到选择器Selector
     */
    public abstract boolean isRegistered();

    /**
     * 返回通道在向给定选择器Selector注册的SelectionKey
     */
    public abstract SelectionKey keyFor(Selector sel);

    /**
     * 将通道注册到一个选择器中,设置感兴趣得事件,并设置附件对象
     */
    public abstract SelectionKey register(Selector sel, int ops, Object att)
            throws ClosedChannelException;

    /**
     * 将通道注册到一个选择器中,设置感兴趣得事件
     */
    public final SelectionKey register(Selector sel, int ops)
            throws ClosedChannelException {
        return register(sel, ops, null);
    }

    /**
     * 调整此通道的阻塞模式
     */
    public abstract SelectableChannel configureBlocking(boolean block)
            throws IOException;

    /**
     * 返回通道得阻塞模式
     */
    public abstract boolean isBlocking();

    public abstract Object blockingLock();

}

相关文章

网友评论

      本文标题:JavaNIO-通道08 SelectableChannel接口

      本文链接:https://www.haomeiwen.com/subject/cvmkrctx.html