深入了解java NIO之Selector(选择器)
选择器提供选择执行已经就绪的任务的能力,这使得多元 I/O 成为可能。就像在第一章中描述的那样,就绪选择和多元执行使得单线程能够有效率地同时管理多个 I/O 通道。C/C++代码的工具箱中,许多年前就已经有 select()和 poll()这两个POSIX系统调用可供使用了。许过操作系统也提供相似的功能,但对Java 程序员来说,就绪选择功能直到 JDK 1.4 才成为可行的方案。下面我们来使用选择器:通过 Selector.open()方法, 我们可以创建一个选择器:将 Channel 注册到选择器中:注意到, 在使用 Channel.register()方法时, 第二个参数指定了我们对 Channel 的什么类型的事件感兴趣, 这些事件有:. selector机制使得单线程管理多个channel变得容易。
下载地址
用户评论