纠正一下:java 的网络编程中的IO多路复用,不是什么发明一个线程监听io。select io 多路复用本质上是linux 的select ,poll,epoll 等模型,是由linux 内核实现对 FD 的轮询。你说的是java 封装后的表相,推荐参看linux 网络编程 或者linux高性能服务器编程。
Java Nio中Selector是什么?Selector怎么使用呢?以前大家都是用阻塞式IO来对网络IO进行数据请求,对于不同的IO都要分配一个线程来处理,如果没有数据就会进行等待,从而造成了阻塞,这种方式极大地浪费了资源(如图1)。于是,有...