CPU温度获取

news/2024/11/7 21:01:58/

CPU温度获取

总结

Windows和linux采用的函数不同;
x86与Arm采用的函数不同;
python3.7和python3.8不同,目前;
在这里插入图片描述

高温试验下CPU温度

CPU温度会高很多,高出环境温度20度左右,还得空气流通,不能积热导致温度上升,不然设备异常概率大。

在这里插入图片描述

后续

需解决超温持续一段时间后,边缘计算设备如何降低负载,以防超温。

发现问题

root\WMI每次结果相同

我尝试了以下代码来获取cpu温度(在管理模式下运行):
public static List Temperatures
{
get
{
List result = new List();
ManagementObjectSearcher searcher = new ManagementObjectSearcher(@“root\WMI”, “SELECT * FROM MSAcpi_ThermalZoneTemperature”);
foreach (ManagementObject obj in searcher.Get())
{
double temperature = Convert.ToDouble(obj[“CurrentTemperature”].ToString());
temperature = (temperature - 2732) / 10.0;
result.Add(new Temperature { CurrentValue = temperature, InstanceName = obj[“InstanceName”].ToString() });
}
return result;
}
}

每次我运行代码,结果是25。发现每次结果相同;

python问题

psutil模块表示获取本机的硬件信息,发现不错;
但获取CPU温度方面,没看到3.8版本的支持
python3.7和python3.8不同,
目前发现3.8下引用wmi提示无win32api,安装后pycharm在编译阶段还是报错,python自带编辑器不报错,但运行报错,查win32api无3.8版本的安装软件,估计是这个原由;
#windows查CPU温度
import wmi
import win32api

有效

声明:

PersistentSettings settings =new PersistentSettings();

UpdateVisitor updateVisitor = new UpdateVisitor();

初始化config配置文件,详情见Bin目录Debug/ReplaseOpenHardwareMonitor.config文件

settings.Load(Path.ChangeExtension(
Application.ExecutablePath, “.config”));

初始化Computer对象

Computer computer= new Computer(settings);

调用open方法

conputer.open();

获取cpu温度:

             StringBuilder str = new StringBuilder();computer.Accept(updateVisitor);for (int i = 0; i < computer.Hardware.Length; i++){//循环找到HardwareType为cpuif (computer.Hardware[i].HardwareType == HardwareType.CPU){for (int j = 0; j < computer.Hardware[i].Sensors.Length;j++ ){//找到温度if (computer.Hardware[i].Sensors[j].SensorType == SensorType.Temperature){//获取到cpu核心str.Append(computer.Hardware[i].Sensors[j].Name);str.Append(" ");//这里就是cpu温度了str.Append(computer.Hardware[i].Sensors[j].Value.ToString());str.Append(" ");}}}}

Console.WriteLine(str.ToString());

这样子就获取到每个cpu核心的温度了。。


http://www.ppmy.cn/news/153578.html

相关文章

根据温度自动调节显卡风扇速度

根据温度自动调节显卡风扇 操作步骤 git clone https://github.com/liqiang311/set-gpu-fans.git mv set-gpu-fans /opt apt-get update apt-get install -y xinit tcsh cd /opt/set-gpu-fans chmod x cool_gpu chmod x nvscmd nohup ./cool_gpu & 输入nvidia-smi,当显示…

【服务器管理】RTX2080ti显卡根据温度自动调整风扇速度

【服务器管理】显卡根据温度自动调整风扇速度 1 未设置自动调整风扇速度时运行nvidia-smi2 克隆代码3 安装依赖项4 修改代码文件权限5 每次开机时打开一个终端运行以下代码即可实现自动调整风扇转速6 检验是否成功运行自动调整风扇速度代码 我们在日常使用GPU显卡跑代码过程当中…

用Python发送通知到企业微信,实现消息推送

Hi&#xff0c;大家好&#xff0c;今天就介绍如何实现自动推送消息到企业微信&#xff0c;适合告警类型通知&#xff0c;非常方便。 在华为工作了10年的大佬出的Web自动化测试教程&#xff0c;华为现用技术教程&#xff01;_哔哩哔哩_bilibili在华为工作了10年的大佬出的Web自…

YOLOV5代码yolo.py文件解读

YOLOV5源码的下载&#xff1a; git clone https://github.com/ultralytics/yolov5.git YOLOV5代码yolo.py文件解读: import argparse import logging import sys from copy import deepcopy from pathlib import Pathimport mathsys.path.append(./) # to run $ python *.p…

基于customerId来实现

定义两个upstream,他们和service及route的关系如下&#xff1a; 这里我们使用 0、将下面的这个spring boot项目在192.168.19.50上进行部署 KongDemoApplication.java package com.example.kongdemo;import org.springframework.beans.factory.annotation.Value; import org…

罗技G29方向盘与Unity的连接交互

首先需要罗技游戏软件驱动&#xff0c;然后就是与Unity连接的SDK了。 发现从Assets Store上下载的Logi Gaming SDK直接导入会报错&#xff0c;缺失dll文件&#xff0c;于是去罗技官网下载了SDK&#xff0c;从里面找到了所缺失的dll文件&#xff0c;导出了一个可以正常使用的无报…

罗技驱动为什么无法识别我的鼠标?

现在很多用户都在使用罗技鼠标&#xff0c;如果罗技的驱动在使用时遇到了无法识别鼠标&#xff0c;或者检测不到鼠标的问题&#xff0c;那么很多都是因为鼠标或接口故障&#xff0c;也可能是安装的驱动版本错误导致。 罗技驱动为什么无法识别我的鼠标&#xff1f; 一、可能是鼠…