【发布时间】:2016-07-06 20:15:18
【问题描述】:
我的应用程序获得了大量的大 InputStreams,并且需要将它们交给需要 ByteBuffers 的驱动程序。 Java InputStream to ByteBuffer 建议先转换成字节数组;但是,这很昂贵,并且确实破坏了使用 NIO 的全部意义。我正在寻找一种方法,让期望 ByteBuffer 的驱动程序可以根据需要从 InputStream 中读取数据。
在我正在处理的情况下,一次消耗整个 InputStream 并将其转换为数组太昂贵和浪费。
【问题讨论】:
-
这里的问题是驱动。它期望您将整个文件读入内存。糟糕的设计。
标签: java performance io