nio新的技术 Channel和Select(unix里面有API,具体的忘记了,通道选择器)。
缓存能够当作一个数组,里面有个指向位置的数值,跟数组的下标似的,符合通常的逻辑思惟。
通道Channel 能够当作是两个物体之间创建起来的一个通路。在nio里面使用的是SocketChannel,估计是一个通道在底层实现了一些Socket通讯,而后进行了封装。
最重要的是选择器(Selector)
通道注册到选择器上
轮询多是用一个while死循环实现的。对每一个注册到服务器上的通道进行轮询,服务器进行向准备就绪的通道进行传送数据。
io多路复用技术epool数组
Socket套接字在链接服务器后若是不释放则套接字能够使用
传统的io通讯是由于,要一直循环接受客户端传来的数据。缓存
推荐网站https://www.iteye.com/magazines/132-Java-NIO nio系列教程服务器
定义服务端Server类
里面有多路复用器Selector 和 读缓存以及写缓存三个私有变量
并使用一个int 类型的 port记录端口号
首先打开多路复用器Selector.open();打开服务器通道 ServerSocketChannel.open();必须手动设置服务器通道为分非阻塞模式configureBlocking(false);绑定地址bind(new InetSocketAddress(port));把服务器通道注册到多路复用器上,并监听事件register(this.seletor,SelectionKey.OP_ACCEPT);ide