0

我将从只读二进制文件中进行随机访问读取。ifstream 的接口似乎比 filebuf 简单;但是有没有什么用例可以让 filebuf 提供更好的性能?

更多详细信息:我有一个固定长度(48 字节)记录的文件,并将按顺序进行随机访问读取——读取 1 条记录,处理,读取 1 条记录(从其他地方),处理,...。 (遍历一棵树。)文件永远不会改变。由于记录是固定长度的,我以后可能会使用 48 字节记录的“字符类型”,但我认为这不会对性能产生任何影响。

4

1 回答 1

0

如果您在 Linux 上使用 mmap 可能会解决一点一点读取文件的整个问题。

或者提升内存映射文件? http://www.boost.org/doc/libs/1_52_0/libs/iostreams/doc/classes/mapped_file.html

于 2013-01-02T17:43:46.940 回答