延迟多处理python脚本

时间:2019-09-26 14:22:38

标签: python-3.x

我有三个独立的python脚本,它们正在执行三个传感器。 一个传感器具有校准过程,因此需要花费几秒钟来开始记录。

我想为其他两个脚本的启动添加一个延迟(b.py和c.py延迟5秒)。 任何想法如何做到这一点。

import os                                                                       
from multiprocessing import Pool                                                


processes = ('a.py', 'b.py', 'c.py')                                    


def run_process(process):                                                             
    os.system('python3 {}'.format(process))                                       


pool = Pool(processes=3)                                                        
pool.map(run_process, processes)

1 个答案:

答案 0 :(得分:0)

由于您使用的是os.system,因此可以使用内置的sleep命令来添加延迟时间

import os
from multiprocessing import Pool


processes = (('a.py', 0), ('b.py', 5), ('c.py', 5))


def run_process(process):
    os.system(f'sleep {process[1]} && python3 {process[0]}')


pool = Pool(processes=3)
pool.map(run_process, processes)