为什么要向 Selector 注册感兴趣的事件类型,而不是直接注册感兴趣的 SocketChannel/ServerSocketChannel ?
我现在看到的许多 NIO 示例中,ServerSocketChannel 只对 Accept 事件感兴趣,SocketChannel 只对读写事件感兴趣,好像代码固定都是这么写的,那为什么向 Selector 注册 SocketChannel 的时候要带一个事件类型参数?
有哪些情况是 SocketChannel 只对读/写事件中其中一类感兴趣,或者都不感兴趣的吗?
感谢!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.