最近在看Netty的源码,顺便了解了一下Java的Nio, 结合JDK源码过了一遍Java NIO Tutorial。下面对其中的一些知识点做下总结。
Java Nio 有三个关键的组件,Channel, Buffer, Selector.
Channel and Buffer
主要包括以下几种Channel和Buffer
- FileChannel (文件)
- DatagramChannel (UDP)
- SocketChannel (TCP)
- ServerSocketChannel (TCP Server)
- ByteBuffer
- CharBuffer
- DoubleBuffer
- …
Channel 和 Buffer 之间的数据传输