假设我有5个函数:f1()f2()f3()f4()f5()。 我需要并行运行f1和f2。完成后我需要并行运行f3和f4,然后在f3和f4结束后运行f5。使用python。 有什么帮助吗?
答案 0 :(得分:0)
您应该结帐threading库。
以下是我在python3中提出的一个例子:
import threading
def f1():
print('f1')
def f2():
print('f2')
def f3():
print('f3')
def f4():
print('f4')
def f5():
print('f5')
t1 = threading.Thread(target=f1)
t2 = threading.Thread(target=f2)
t1.start()
t2.start()
t1.join()
t2.join()
t1 = threading.Thread(target=f3)
t2 = threading.Thread(target=f4)
t1.start()
t2.start()
t1.join()
t2.join()
f5()
希望它有所帮助!
答案 1 :(得分:0)
您可以使用multithreading来实现您的目标。首先,您需要启动两个线程来执行第一和第二个函数,然后您可以使用thread.join()
等待线程终止,然后启动其他函数。以下是如何完成的示例:
import threading
l = [f1, f2, f3, f4, f5]
while l:
if len(l) == 1:
l.pop()()
else:
t1 = threading.Thread(target=l.pop())
t2 = threading.Thread(target=l.pop())
t1.start()
t2.start()
t1.join()
t2.join()