【发布时间】:2014-06-02 01:27:41
【问题描述】:
我需要开发一个应用程序,它可以比使用 1 个线程读取源文件和另一个线程来写入源文件的操作系统复制速度更快。源文件和目标文件位于不同的硬盘中。
我的问题是如何将源读取线程的结果传递到目标写入线程而不导致一些竞争条件,并且仍然保持复制过程的最佳性能以实现比操作系统复制更快的复制过程。
【问题讨论】:
-
向我们展示您已经尝试过的代码。
-
如果目标驻留在同一个硬盘上,恕我直言,添加更多线程不太可能对性能提升有很大帮助。
-
操作系统的编写者可能已经花费了大量时间使他们的复制例程尽可能高效,并且他们拥有对操作系统如何工作的深入了解的优势。所以我不会屏息以待获得比他们更快的结果。
标签: c++ multithreading file copy