c++ - 在 C++ 中并行读取大文本文件

标签 c++

我有一个很大的文本文件..我想读取这个文件并在其中执行一些操作..

此操作独立发生在每一行上。所以基本上,我正在寻找一些可以并行执行此操作的函数。

void readFile(string filename){

  //do manipulation

}

操作可以并行发生。

同意这可以使用 hadoop 轻松完成,但这是一个矫枉过正的解决方案。 (它的文件很大,但没有大到我需要 hadoop 的程度...)

我如何在 C++ 中执行此操作?

最佳答案

我会使用 mmap为了那个原因。 mmap 使您可以像内存一样访问文件,因此您可以轻松地并行读取。请看another stackoverflow topic about mmap .在 mmap 中使用非只读模式时要小心。

关于c++ - 在 C++ 中并行读取大文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17243697/

相关文章:

c++ - std::function 隐式类型转换

C++无法在构造函数中使用模板化参数转换类

c++ - 探查器报告的时间与真实时间 - 为什么会出现差异?

c# - SendMessage 使用 RegisterWindowMessage API 失败

c++ - 在大数乘法上使用 FFT 的问题

c++ - For 循环条件 (cpp)

c++ - 获取指向基类 protected 成员函数的函数指针

c++ - 通过 C++ 中的指针在对象之间共享数据

c++ - imageAtomicExchange 无法编译

c++ - 无法使 C++ 程序正确计数