zoukankan      html  css  js  c++  java
  • Netty Associated -- Channel

    A nexus to a network socket or a component which is capable of I/O operations such as read, write, connect, and bind.

    一个网络套接字或组件的枢纽, 用来进行 I/O 操作, 例如 read, write, connect, bind.


    A channel provides a user:

    一个Channel的提供给用户的东西有: 

    • the current state of the channel (e.g. is it open? is it connected?),
    • channel目前的状态(例如 是否是打开的? 是否是连接的?)
    • the configuration parameters of the channel (e.g. receive buffer size),
    • channel的配置参数(例如接收缓存的大小)
    • the I/O operations that the channel supports (e.g. read, write, connect, and bind), and
    • channel支持的I/O操作(例如 read, write, connect, bind)
    • the ChannelPipeline which handles all I/O events and requests associated with the channel.
    • 一个ChannelPipeline, 这个pipeline用来处理所有的I/O时间和域channel相关的请求

    All I/O operations are asynchronous.

    所有I/O操作都是异步的

    All I/O operations in Netty are asynchronous. It means any I/O calls will return immediately with no guarantee that the requested I/O operation has been completed at the end of the call. Instead, you will be returned with a ChannelFuture instance which will notify you when the requested I/O operation has succeeded, failed, or canceled.

    在Netty中所有I/O操作都是异步的. 这意味着任何的IO调用都会立即返回, 但是无法保证在IO调用完成以后,请求的IO操作已经完成了.取而代之的是, 你会被返回一个ChannelFuture实例, 它在请求的IO操作成功, 失败, 取消的时候会通知你.

    Channels are hierarchical

    Channel是分等级的

    A Channel can have a parent depending on how it was created. For instance, a SocketChannel, that was accepted by ServerSocketChannel, will return the ServerSocketChannel as its parent on parent().

    一个Channel可以有一个父母, 这取决于他是如何被创建的. 例如, 一个被ServerSocketChannel接受的SocketChannel, 调用它的parent()方法会返回他的父母 -- ServerSocketChannel


    The semantics of the hierarchical structure depends on the transport implementation where the Channel belongs to. For example, you could write a new Channel implementation that creates the sub-channels that share one socket connection, as BEEP and SSH do.

    分级结构的语义取决于Channel从属的传输实现.例如,你可以写一个新的Channel实现, 它创建一个子channel, 并共享一个socket连接, 就像 BEEP和SSH那样.

    Downcast to access transport-specific operations

    向下转型来访问特定传输协议操作

    Some transports exposes additional operations that is specific to the transport. Down-cast the Channel to sub-type to invoke such operations. For example, with the old I/O datagram transport, multicast join / leave operations are provided by DatagramChannel.

    一些传输协议暴露了一些这个协议特有的操作.可以将Channel向下转型为一个子类型来调用这些操作. 例如, 旧的IO数据报传输协议, 组播 join/ leave 操作都是由 DatagramChannel提供的.

  • 相关阅读:
    RSA加密解密算法
    PHP Request请求封装
    Mysql常用命令大全 sql
    [mysql] 修复问题表Table '.xxxx' is marked as crashed and should be repaired
    Allowed memory size of 134217728 bytes exhausted
    PHP $_SERVER['HTTP_REFERER'] 获取前一页面的 URL 地址
    windows 2012 如何设置取消禁拼ping
    Access提示Insert Into 语法错误解决办法总结
    Linux常用命令大全
    [转]临时表空间学习
  • 原文地址:https://www.cnblogs.com/zemliu/p/3378713.html
Copyright © 2011-2022 走看看