我一直在使用Java 7中的NIO2进行测试,我有点假设AsynchronousFileChannel将具有transferTo方法,例如其同步FileChannel同级。

我正在寻找在本地文件和打开的TCP套接字之间执行零拷贝传输的方法。我试图简单地创建一个FileChannel并以我的transferTo作为最后一个arg调用AsynchronousSocketChannel,但是由于异步套接字版本不是WritableByteChannel,因此Java不会使用它。

排除了该选项后,是否有人知道一种解决方法或外部库,该解决方法或外部库将允许我利用DMA(并暗示在用户空间中不使用缓冲区)将字节通过管道传输到AsynchronousSocketChannel

最佳答案

transferTo()不是异步操作。因此,在异步通道上执行它是没有意义的。因此未提供。

关于java - AsynchronousFileChannel是否具有与transferTo等效的功能?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9893427/

10-10 01:51