首页 > 解决方案 > 多个进程读/写文件。使用什么 API?

问题描述

当我需要生成工作进程时,我遇到了这种情况。一方面,工作进程应该读取文件的平均分割部分并将数据传递给套接字连接。另一方应读取该数据并并行写入。我计划预先将源文件分成几部分,以便每个进程只获取文件的一部分来读取或写入。

所以我已经在使用带有读/写功能的套接字。因此,我认为继续使用这个简单的 API 对我来说会更好。但是在使用文件描述符时我找不到任何设置文件指针的方法。显然,当从分为读/写部分的文件中读取时,我需要它。

我听说 mmap 可以以某种方式帮助我。但据我了解,mmap 需要大量 RAM,我的应用程序将运行多次提到的传输。该应用程序的 CPU 使用率也非常有限。问题是,我应该使用什么 API?

编辑我在 Linux 上。文件系统是 ext4。

标签: clinuxsocketsforkmmap

解决方案


推荐阅读