繁体   English   中英

连续运行 Python 或限制 CPU 使用率的更好方法

[英]Better way to run Python continiously or limit CPU usage

我正在运行一个树莓派 pi4 作为考勤工具。 Pi 本身对在其上运行的任务感到厌烦,它基本上是一个 nodejs 服务器、一个 Web 前端以及一个 Postgres DB。

但是,如果我启动我的 Python 脚本来不断检查 RFID 标签,CPU 的使用率会上升到 30%,其中一个核心会最大化,这会导致温度升高。

由于对于 PI 而言,所有其他任务基本上都是轻而易举的事情,我想知道是否有任何方法可以降低此过程,或者对于 python 脚本有更好的方法。

该脚本本身是绝对基本的,但不幸的是需要在无限循环中运行,例如:

reader = SimpleMFRC522()
while true:
        id, text = reader.read()
        if(id):
              ...processData

我知道 30% 的 CPU 使用率也几乎没有,但由于 PI 上没有任何风扇或散热器,我不太关心生产环境中的温度。

此外,由于此任务基本上只检查 rfid 标签,如果发现将数据发布到 restapi,我觉得这对整体使用性能是一种浪费。

谢谢!

你希望你的read调用被阻止; 可悲的是, 您正在使用的非常...薄的“简单”包装器显式执行非阻塞读取。 因此,只需将SimpleMFRC522替换为MFRC522 object 并进行阻塞读取。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM