子进程管理

2024-06-09 09:51:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在做一个项目,需要一个进程在后台运行,通过串行接口输出数据,一次只能有一个进程处于活动状态。我们需要创建一个触摸屏界面来控制采样率和其他一些因素。我面临的问题是如何管理这个过程。这是运行在一个树莓皮3 B+和触摸屏是使用kivy。因为我需要从触摸屏上管理它,所以我需要一些对这个后台进程的访问来更改值,因为如果我在UI中运行它,触摸屏会冻结,因为我必须将读取放入一个while-true循环中,这个循环永远不会退出。串行输出过程的格式化示例如下

percent = calculate_percentage(data_rate, max_value)
while True:
    percent.output_percentage()
    time.sleep((1/data_rate) - 0.00055)

0.00055表示percent.output_percentage()运行所需的时间,因为我们希望采样率尽可能精确,如果不考虑这个值,进程运行的时间越长,我们会得到大量的漂移。如果有人对如何处理这个问题有什么建议,我也很乐意听听

我很想找到一些方法来管理这个过程,并轻松地改变价值观和杀死旧的过程


Tags: 数据项目outputdata界面rate进程过程