Java的FileChannel支持使用 int write(ByteBuffer [] src)从收集写入中的缓冲区数据写入通道。
然而,它不支持使用偏移方法写入(ByteBuffer src,long position )的等效写入。在没有锁定通道,改变位置,写入该位置,然后解锁通道的情况下,似乎没有办法收集写入指定的偏移量。
看来最终java使用writev系统调用来执行收集写入。 pwritev 命令似乎完全符合人们的期望并期望它。
为什么没有带偏移的聚集写方法有什么好的理由?有没有实现这个的库?