Channel & Buffer
chanel是双向通道 Buffer缓存数据
Selector 选择器
thread----> Selector---->channel
ByteBuffer使用
1. 向buffer写入数据,channel.read(buffer)
2. 调用buffer.flip()切换到读模式
3. 从buffer读取数据,buffer.get()
4. 调用clear()或者compact()切换到写模式
5. 重复调用1~4.
heapByteBuffer Java堆内存中,DirectByteBuffer 直接内存中
buffer 的mark和reset
mark作一个标记,记录position位置,reset将position重置到mark位置
字符串转ByteBuffer
数据粘包,半包mode