有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

linux java中有真正的异步文件存取器吗?

我想异步读/写一个原始设备(在linux中只是一个文件),我一直在使用java.nio.channels.AsynchronousFileChannel

但这是一个“假异步”,因为AsynchronousFileChannel使用线程池来执行读/写任务。它实际上是在调用操作系统提供的同步读/写接口

我真正想要的是一个真正的异步实现,它在linux中是io_submit

但我在jdk或任何其他存储库(如guava或apache)中都找不到它

所以我的问题是:

  1. 在java中,是否存在基于本机io_submit接口的异步文件访问器的现有实现

  2. 如果没有,为什么我看不到其他需要它的人


共 (1) 个答案

  1. # 1 楼答案

    In java, is there an existing implementation of asynchronous file accessor based on the native io_submit interface

    在撰写本文时(2019年),默认Java库中没有。我怀疑在默认库中实现io_submit()Java包装器的热情有多高,因为:

    If not, why can't I see anyone else who need it ?

    非常需要它的人已经重新创建了包装(例如,参见https://github.com/zrlio/jaio)。然而,支持KAIO将是Linux独有的东西,因此没有那么好的可移植性(这有点违背了Java的一个关键理念)