c#CPU和内存监视器控制台应用程序一直警告我,μCPU负载为100%

时间:2017-05-30 07:15:30

标签: c# text-to-speech performancecounter

我假设我发现自己是某种令人讨厌的错误。 我最近尝试在c#中创建一个控制台应用程序来打印CPU Load&每秒可用的内存。虽然这种情况继续下去,但我确保应用程序仅在CPU负载超过80%时警告CPU使用率。你会看到更严重的100%警告。

但是,当我运行该应用程序时,它会不断警告我CPU处于100%,即使我知道它不应该在那附近运行。我下载了CPU Burn In来测试应用程序并将CPU推到100%,但我百分之百确定它一直被禁用。

我将在下面发布我的代码。

test

}

2 个答案:

答案 0 :(得分:1)

你有一个无限循环,如果你有一个无限循环,计算机将连续运行代码。正如其他人在评论中指出的那样,您应该使用某种形式的计时器,以便仅按特定间隔进行轮询。更好的是,只有在警报被击中时才能使用WMI事件观察器进行调用。

Google WMI活动或阅读类似的内容;

https://msdn.microsoft.com/en-us/library/aa393013(v=vs.85).aspx

答案 1 :(得分:-2)

您可以使用此代码段每秒检查一次:

static void Main(string[] args)
    {
        System.Threading.Timer timer = new Timer(new TimerCallback(CheckUsage), null, 0, 1000);
        timer.Enabled = true;

        //exit and dispose timer somehow
    }

    static void CheckUsage(object state)
    {
        //Check usage here
    }