gpt4 book ai didi

C++ - 确保硬盘(驱动器)在程序执行期间不空闲

转载 作者:行者123 更新时间:2023-11-28 00:50:31 36 4
gpt4 key购买 nike

我有几个问题:

  1. 以下 C++ 代码是否会导致我的硬盘在经过一定时间后空闲?

    #include <stdio.h>

    int main()
    {
    while(1);
    }
  2. 如果是这样,我可以在此代码中添加什么以确保我的硬盘在执行期间不会闲置?

  3. 有没有办法通过C++代码检查我的硬盘是否处于空闲状态?

注意:我使用的是 Windows 7

最佳答案

  1. 如果启用空闲,是的,因为它不访问硬盘。
  2. 没有;您的代码甚至可能无法从硬盘驱动器上运行。即使您添加代码来读取某些数据,它也可能会被缓存并且不会触及磁盘。您可能可以先写入再刷新,以确保数据已提交到磁盘,但这会在刷新期间阻塞您的程序(而且这种方法也不可靠。)
  3. 可能是您可以使用 SMART 等方式进行检查,但请记住,您的程序可能不是在硬盘驱动器上运行 - 可能在 SSD 上,可能通过网络,可能来自 RAM 磁盘。

一般来说,您不应该在您的程序中加入这样的假设。如果您需要触摸磁盘并且您担心硬盘驱动器可能会关闭并需要很长时间,请要求用户禁用硬盘驱动器 sleep 。对于服务器应用程序,这很可能不是问题,因为驱动器始终在运行。对于 SSD 之类的东西,无论如何这都不是问题,因为这些驱动器不会从空闲状态“加速”。

关于C++ - 确保硬盘(驱动器)在程序执行期间不空闲,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14332413/

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