0
如何让主线程在python中启动后等待内部线程?如何让主线程启动后等待内部线程?
我使用join
这个,但它不能正常工作,我认为这是因为内部线程调用time.sleep()
。 任何想法?
这里是代码块中:
def execution(start,end):
for i in range (start,end):
main()
return
def waitForThread(delay,my_threads):
time.sleep (delay)
for t in my_threads:
t.join()
if t in my_threads:
my_threads.remove (t)
return
def task(user,sleep): # it has multiple time.sleep()
#do some actions
time.sleep()
#do some actions
time.sleep()
return
def main():
threads=[]
for user in accounts:
t = Thread (target=task,args=(sleep-time,user))
t.start()
threads.append (t)
waitForThread (130,threads)
## I want the code stop here and when the execution of threads finished continue
## doing other staff here
return
if __name__ == '__main__':
execution(1,30)
我严重怀疑,只是删除这些行将使代码基于OP的答案中的不可运行的代码工作。 – martineau
@martineau好的,我修改了我的答案以解决OP中询问的特定问题。 – JohanL