gpt4 book ai didi

C++ - 有效地顺序读取文件

转载 作者:行者123 更新时间:2023-11-30 02:46:16 25 4
gpt4 key购买 nike

我需要在 C++ 中顺序读取一个文件,一次处理 4 个字符(但它是一个滑动窗口,所以下一个字符与它之前的 3 个字符一起处理)。我可以将文件 block 读入缓冲区(我知道 mmap() 会更有效率,但我想坚持使用平台无关的普通 C++),或者我可以读取文件中的一个字符使用 std::cin.read() 的时间。该文件可以任意大,因此无法读取整个文件。

哪种方法更有效?

最佳答案

最有效的方法是使用最少的函数调用或请求将大量数据读入内存。

目标是保持硬盘驱动器旋转。瓶颈之一是等待硬盘驱动器旋转到正确的速度。另一种方法是尝试在硬盘驱动器上找到您请求的数据所在的扇区。第三个瓶颈是与数据库和内存的冲突。

所以我投票支持read 方法进入缓冲区并搜索缓冲区。

关于C++ - 有效地顺序读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23687785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com