首页 > 代码库 > 选择器

选择器

选择器允许单线程操作多个通道。如果你的程序中有大量的链接,同时每个链接的IO带宽不高的话,这个特性将 会非常有帮助。比如聊天服务器。 下面是一个单线程中Slector维护3个Channel的示意图: 

 技术分享

要使用Selector的话,我们必须把Channel注册到Selector上,然后就可以调用Selector的selectr()方法。这个 方法会进入阻塞,直到有一个channel的状态符合条件。当方法返回后,线程可以处理这些事件。 
 

 

选择器