使用Python';完成特定的其他进程后启动进程;s多处理
我有一组流程,其中一些流程要求集中的其他流程首先完成。如何检查指定的流程是否成功完成 我尝试使用使用Python';完成特定的其他进程后启动进程;s多处理,python,multiprocessing,queue,Python,Multiprocessing,Queue,我有一组流程,其中一些流程要求集中的其他流程首先完成。如何检查指定的流程是否成功完成 我尝试使用多处理.Queue,但我不知道如何检查Queue的内容。我也不确定这样做是否正确: 来自多处理导入进程,队列 def打印名称(队列、名称): 印刷品(名称) queue.put(名称) def main(): 订单=[{'name':'procA','requires':[]}, {'name':'procB','requires':[]}, {'name':'procC','requires':['
多处理.Queue
,但我不知道如何检查Queue的内容。我也不确定这样做是否正确:
来自多处理导入进程,队列
def打印名称(队列、名称):
印刷品(名称)
queue.put(名称)
def main():
订单=[{'name':'procA','requires':[]},
{'name':'procB','requires':[]},
{'name':'procC','requires':['procB']},
{'name':'procD','requires':['procA','procC']}]
队列=队列()
procs=[顺序中项目的进程(目标=打印\名称,参数=(队列,项目['name'])]
对于项目,zip中的proc(订单,procs):
如果len(项['requires'])==0:
程序启动()
其他:
如果全部([require in queue for require in item['requires']]):#我需要“require in queue”的语法
程序启动()
对于进程中的进程:
proc.join()
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
main()
1。您可以使用以下命令接收错误:proc.start();proc.join();如果proc.exception:error,则回溯=proc.exception代码>2。当procB
完成.join()
时,需要将procC
的逻辑写入.start()
。然而,您正在运行proc.join()
,在最后,同时为每个人运行。@TinNguyen我不太理解第一点。我可以检查一个特定的过程是否完成了吗?