在Java和/或Android中是否可以对文件通道使用NIO选择器?
我正在尝试使用NIO从文件中读取数据。问题是,该文件不仅仅是任何文件,而是一个模拟网络设备(即tun0)的文件。由于各种原因,选择器无法使用,因为文件始终存在,但在本例中,其数据不断变化,我需要立即接收该事件,而无需轮询 那么,是否有某种方式可以使用选择器,如果没有,有哪些类似的高性能选项在Java和/或Android中是否可以对文件通道使用NIO选择器?,java,android,selector,nio,channel,Java,Android,Selector,Nio,Channel,我正在尝试使用NIO从文件中读取数据。问题是,该文件不仅仅是任何文件,而是一个模拟网络设备(即tun0)的文件。由于各种原因,选择器无法使用,因为文件始终存在,但在本例中,其数据不断变化,我需要立即接收该事件,而无需轮询 那么,是否有某种方式可以使用选择器,如果没有,有哪些类似的高性能选项 谢谢。文件频道不是可选择的频道,因此不能与选择器一起使用 您引用的“各种原因”不正确。您可以在Unix中使用带有select()的文件FD。我同意,这不是一个SelectableChannel,因为我查看了源
谢谢。文件频道不是可选择的频道,因此不能与选择器一起使用
您引用的“各种原因”不正确。您可以在Unix中使用带有select()的文件FD。我同意,这不是一个SelectableChannel,因为我查看了源代码,但我正在寻找其他方法,以获得类似的内容。基本上,您的解决方案可能意味着我有一个本机select(),然后从java调用它,对吗?这不是我的“解决方案”。这是我对您引用的“各种答案”的反驳,这些答案给出了一个不正确的理由,说明您不能在Java中这样做。我的解决方案是使用阻塞模式、java.io和专用线程。