Я играл с NIO2 в Java 7, и я вроде бы предполагал, что AsynchronousFileChannel
будет иметь метод transferTo
, такой как его синхронный FileChannel
брат или сестра.
Я ищу передачу без копий между локальным файлом и открытым сокетом TCP. Я попытался просто создать FileChannel
и вызвать transferTo
с моим AsynchronousSocketChannel
в качестве последнего аргумента, но, учитывая, что версия асинхронного сокета не является WritableByteChannel
, у Java его не будет.
Если это исключено как опция, кто-нибудь знает об обходном пути или внешней библиотеке, которая позволила бы мне направлять байты в AsynchronousSocketChannel
с использованием DMA (и, как следствие, без использования буферов в пользовательском пространстве)?