gpt4 book ai didi

c++ - 以极低的资源要求强制复制文件

转载 作者:行者123 更新时间:2023-11-30 05:01:23 25 4
gpt4 key购买 nike

我有一个用 C++ 编写的程序,可以将文件永久写入硬盘。使用的硬盘速度足够快,可以在不降低应用程序速度的情况下处理此问题。

现在我不时喜欢将文件复制/同步到我们服务器的程序。我面临的挑战是我不希望拷贝使用很多系统资源,因此它不会减慢应用程序或新文件的写入速度。

我想在后台线程上运行复制/同步会有所帮助,但它仍然会给硬盘带来压力并减慢写入新文件的速度,对吗?

所以我想我的问题是如何控制复制操作的速度?或者还有其他更好的方法吗?

非常感谢任何帮助。

丹尼斯

最佳答案

重读这篇文章 - “现在我时不时喜欢这个程序将文件复制/同步到我们的服务器。我面临的挑战是我不希望拷贝使用很多系统资源,所以它不会变慢应用程序或新文件的写入。”

这意味着您实际上并没有试图避免在盒子里努力工作;您只是不想在其他文件工作上落后。

我会创建一个后台线程来执行所有磁盘访问;并提供 2 个队列供其处理。第一个是要写入的新文件;第二个是要复制的文件。然后,该线程可以通过一次处理 block 来全速使用磁盘;优先从新文件区域获取 block 。这将允许您开始复制;然后在有大量文件要处理时完全停止复制(以防突然出现),然后在处理完所有文件后尽可能快地复制。

关于c++ - 以极低的资源要求强制复制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50327015/

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