有关Zero-Copy、MMap以及DirectByteBuffer的一切

有一个很常见的场景,比如需要将文件从磁盘上原封不动地发送到网络的另一端。这通过代码实现起来很简单:对于Java而言,你可以使用InputStream的某个实现类将文件一块块地读取到小的缓冲区(通常我们都将缓冲区大小设置为8KB),然后再将缓冲区数据输出到OutputStream中。更好的做法是你可以创建一个PipedInputStream实例,让它来管理缓冲区。但是,如果你的应用对性能有要求,那么
相关文章
相关标签/搜索