0

如何以串行方式与并行方式创建流程执行?

例如,我希望每个进程执行以下 python 函数:

def execute():
   time.sleep(random.randint(0,9))

如果我运行如下进程:

for process in process_list:
   process.run()

给定串行fahsion中只有 2 个进程的场景,我希望程序的输出是 exatcly:

process 1 - start
process 1 - end
process 2 - start
process 2 - end

并行场景中,我期望可能的输出,例如:

process 1 - start
process 2 - start
process 2 - end
process 1 - end

如何使用处理模块在 python 中复制这两个场景?通过使用multiprocessing还是subprocess模块?

4

1 回答 1

0

使用内置库中的线程。

创建你的线程

thread = threading.thread()

开始

thread.start()

然后,在线程的执行中,调用

 otherThread.join() 

形成一个顺序/串行队列,其中调用线程在被调用线程之后执行。

https://docs.python.org/2/library/threading.html

于 2018-02-02T17:54:10.160 回答