摘要: 为什么不调用ServerSocketChannel.accept() 就会一直触发 OP_ACCEPT 事件? 为什么不调用SocketChannel.read() 就会一直触发 OP_READ 事件? 为什么注册了 OP_WRITE,就会一直触发写就绪事件? 阅读全文
posted @ 2020-08-09 22:14 极客子羽 阅读(676) 评论(0) 推荐(0)
摘要: java 1.4 引入 java.nio 包,使用这些 API 可以实现一个 BIO 模型,也可以实现 NIO 模型。 BIO模型在客户端与服务端建立连接之后,服务端就会立即分配一个线程,但是服务端又需要阻塞线程来等待读取客户端发送数据。 这样就需要不断创建新的线程应对不断增加的服务端请求,而创建线程是需要消耗服务器性能的。那么可不可以等客户端数据到达后再分配线程进行处理呢? Selector 以及基于事件处理的 NIO 模型“应运而生”。 阅读全文
posted @ 2020-08-09 19:36 极客子羽 阅读(387) 评论(0) 推荐(0)