key.interestOps(key.readyOps() & ~ ops)取消了感兴趣的事件,那又在哪里恢复了事件呢?
来源:7-10 NIO服务器Thread优化-4
qq_蓝城_1
2019-11-05
写回答
1回答
-
Qiujuer
2019-11-07
我写一下整个的流程哈:
1. 想要读取数据-首先注册读取事件2. 有数据来了-读取事件就绪
3. 开始取消兴趣关注(如果不取消,因为轮训是单独的线程,在此轮训时会再次发现就绪,会反复去多并非读取,导致数据错乱。)
4. 线程池-处理读取数据事件
5. 读取数据完成
6. 想要再次读取数据-再次注册读取事件
循环。
112019-11-07
相似问题