【发布时间】:2019-04-04 14:03:31
【问题描述】:
我正在尝试在 python 2.7 中实现非常简单的多处理代码,但看起来代码是串行而不是并行运行的。 以下代码打印 *****1***** 而我希望它在 *****1***** 之后立即打印 *****2*****。
import os
import multiprocessing
from time import sleep
def main():
func1_proc = multiprocessing.Process(target=func1())
func2_proc = multiprocessing.Process(target=func2())
func1_proc.start()
func2_proc.start()
pass
def func1():
print "*****1*****"
sleep(100)
def func2():
print "*****2*****"
sleep(100)
if __name__ == "__main__":
main()
【问题讨论】:
-
两个衍生的进程独立运行,你为什么期望任何输出顺序?
-
顺序不是问题,该代码只打印一行,而我预计是 2 行。