如何以编程方式检测CPU热节流

问题描述

我正在创建一个小型WinForm应用程序以快速检查cpu散热是否正常。 为了推动cpu,我目前使用下面的代码。 我使用openhardwaremonitorlib.dll在一秒钟的间隔内捕获所有核心温度。 这对我有用,但是给cpu通电可能会导致热调节,因此仅检查温度是不够的。因此,我想检查一个标志或其他指示器,但是没有找到任何可用的。一种解决方法是记录cpu时钟速度,但我希望有一种更简单的方法

public static void cpuKill(object cpuUsage)
        {
            Parallel.For(0,1,new Action<int>((int i) =>
            {
                Stopwatch watch = new Stopwatch();
                watch.Start();
                while (StartTime < TestTimecpu+5)
                {

                    if (ErrorState == false && Exitpressed == false)
                    {
                        if (watch.ElapsedMilliseconds > (int)cpuUsage)
                        {
                            Thread.Sleep(100 - (int)cpuUsage);
                            watch.Reset();
                            watch.Start();
                        }
                    }
                    else
                    {
                        watch.Stop();
                        break;
                    }
                }
            }));
        }







 

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)