我一直在使用 KivyPie 操作系统(为 Kivy 开发预配置的 Linux)在 Raspberry Pi 上编写一个 Kivy 图形程序。
出于某种原因,如果使用 sudo 启动,它会运行得非常慢。 通常情况下,运行“python main.py”,程序以每秒大约 30 个周期的速度运行。 但是,如果我执行“sudo python main.py”,它运行的速度慢到每 5-10 秒 1 个周期。
我需要使用 sudo 来访问 Raspberry 的 GPIO。 (除非我尝试其他方式去做,我看到人们在讨论)。
不过,我感兴趣的是,使用 sudo 导致性能大幅下降的原因是什么?有没有可能解决这个问题?
PS:在我的 PC (Linux) 上使用和不使用 sudo 运行相同的程序似乎不会导致这样的问题。仅适用于树莓派。
最佳答案
问题是 Kivy 正在为 root 用户使用替代的 config.ini 文件,而不是你在 ~/.kivy/config.ini
中的文件。
在 python 文件的顶部,您可以添加以下内容以强制它使用
egl_rpi
窗口:
import os
os.environ['KIVY_WINDOW'] = 'egl_rpi'
或者,您可以使用以下方法将 ini 文件复制到根目录:
sudo cp ~/.kivy/config.ini/root/.kivy/config.ini
关于python - Raspberry Pi Python (Kivy) 使用 sudo 时速度极慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31786122/