JAVA_NIO ,走进JavaNIO的世界


Java NIO: Channels and Buffers//通道和缓冲区
Java NIO: Non-blocking IO//异步IO
 //一个线程可以请求通道读取数据到buffer中,当通道读取数据到buffer中的时候,这个线程依然可以做其它的事情,buffer数据读到channel也是一样的
Java NIO: Selectors
//一个选择器可以对象可以管理多个通道比如 connection opened, data arrived,这样的话 一个线程就可以管理多个通道做一些数据的操作
Channels and Buffers
JAVA_NIO ,走进JavaNIO的世界
主要的实现 buffer的类
    ByteBuffer
    CharBuffer
    DoubleBuffer
    FloatBuffer
    IntBuffer
    LongBuffer
    ShortBuffer

主要的 channel
    FileChannel
    DatagramChannel
    SocketChannel
    ServerSocketChannel

    这些通道可以被用做 UDP + TCP network IO, and file IO
    
    Selectors//适用于低业务量
    JAVA_NIO ,走进JavaNIO的世界    
    
    A Thread uses a Selector to handle 3 Channel's
    
    一个selector 允许一个线程处理多个通道,假使你有多个连接(channel),但是适用于低业务量,使用selector 注册在通道上  然后调用select()方法,这个方法将会阻塞,直到有一个或者多个注册在通道上的事件返回,
    一旦方法返回,线程便可以处理这些事件,例如incoming connection(链接到来), data received(数据接收)

//未完待续。。。

你可能感兴趣的:(JAVA_NIO ,走进JavaNIO的世界)