Selector如何在java中使用?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
Java的基本数据类型分为:1、整数类型,用来表示整数的数据类型。2、浮点类型,用来表示小数的数据类型。3、字符类型,字符类型的关键字是“char”。4、布尔类型,是表示逻辑值的基本数据类型。
1、使用说明
可以用selector对象注册多个通道。当I/O活动发生在任何通道上时,选择器通知我们。这就是我们如何从单个线程读取大量数据源的方法。我们向选择器注册的任何通道都必须是SelectableChannel的子类。这是一种特殊类型的通道,可以放在非阻塞模式中。所以FileChannel不适用Selector,因为FileChannel不能切换为非阻塞模式,更准确的来说是因为FileChannel没有继承SelectableChannel。而Socket channel可以正常使用。
2、实例
注册Channel到Selector(Channel必须是非阻塞的)
channel.configureBlocking(false); SelectionKey key = channel.register(selector, Selectionkey.OP_READ);
SelectionKey介绍
一个SelectionKey键表示了一个特定的通道对象和一个特定的选择器对象之间的注册关系。
从Selector中选择channel(Selecting Channels via a Selector)
选择器维护注册过的通道的集合,并且这种注册关系都被封装在SelectionKey当中.
停止选择的方法
wakeup()方法 和close()方法。
关于Selector如何在java中使用问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。