如何使python线程依赖于另一个线程的完成?
基本上,我希望发出15000个get请求,格式为get www.somewebsite.com/archive/1、www.somewebsite.com/archive/2,并在本地将内容写入自己的文件。但按顺序完成所有这些需要一点时间。并且使用自己的线程执行这些操作会导致各种IO和HTTP错误。但如果我一次说50,效果很好。我想做的是创建一个区块线程,我从中生成50个线程,然后在该线程完成后生成另一个区块线程。但我还没有找到一个方法来做到这一点 我需要一种说“在这个线程完成之前不要再执行任何行”的方法,或者一种将异步执行的线程按顺序排队的方法。“您需要在脚本末尾使用线程对象的join方法。” 这一点已由秘书长说明如何使python线程依赖于另一个线程的完成?,python,multithreading,Python,Multithreading,基本上,我希望发出15000个get请求,格式为get www.somewebsite.com/archive/1、www.somewebsite.com/archive/2,并在本地将内容写入自己的文件。但按顺序完成所有这些需要一点时间。并且使用自己的线程执行这些操作会导致各种IO和HTTP错误。但如果我一次说50,效果很好。我想做的是创建一个区块线程,我从中生成50个线程,然后在该线程完成后生成另一个区块线程。但我还没有找到一个方法来做到这一点 我需要一种说“在这个线程完成之前不要再执行任何
您可能还想看看multiprocessing类。Python有一个内置库,允许您使用队列实现简单的批处理
import multiprocessing
static_input = range(100)
chunksize = 10
def work(item):
return "Number " + str(item)
with multiprocessing.Pool() as pool:
for out in pool.imap_unordered(work, static_input, chunksize):
print(out)