微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 psutil (Windows) 在 python 中获取当前频率

如何解决使用 psutil (Windows) 在 python 中获取当前频率

我尝试使用 psutil 函数 psutil.cpu_freq(percpu=False) 获取处理器的当前频率。 但正如文档中所写的“在 Linux 当前频率报告实时值,在所有其他平台上它代表标称的“固定”值”。 有没有办法在 Windows 中获取当前频率? 谢谢!

解决方法

搜索“python windows get actual frequency”会产生一个堆栈溢出问题:Unable to get current CPU frequency in Powershell or Python。它说:

要查找当前处理器频率,您必须使用 % Processor Performance 性能计数器

因此搜索“python windows get performance counter”会产生这个 PyPI 库:winstats。它让你做:

usage = winstats.get_perf_data(r'\Processor(_Total)\% Processor Time',fmt='double',delay=100)
print('    CPU Usage: %.02f %%' % usage)

get_perf_data 的第一个参数被命名为 counters,并且正如文档所说必须是 Localized Windows PerfMon counter name,or list of.。因为它必须是本地化名称,而且我手头没有英文 Windows,所以我无法重现它,但它可以工作。

如果您希望您的代码适用于任何语言,那么关于 Stack Overflow 的问题有很多,这里有一个看起来很有希望的问题:https://stackoverflow.com/a/16364388/11384184

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。