Netty由浅到深_第三章_NIO模型3大组件详细介绍
NIO三大核心原理示意图 每个channel(通道)都会对应一个buffer(缓冲区) Selector(选择器)对应一个线程,一个线程对应多个channel(连接) 程序切换到那个channel是由事件决定的,==Event(事件)==是一个非常重要概念 Selector会根据不同的事件,在各个通道上切换 Buffer就是一个内存块,底层是一个数组 数据的读写是通过Buffer,这个和BIO不同的。BIO中要么是输入流或者是输出流,不可能是双向流动的,但是NIO中的Buffer是可以读也可以写,需要用flip()方法切换 channel是双向的,可以返回底层操作系统情况,比如Linux系统
下载地址
用户评论