“threadedprocesspoolexecutor”由修改后的“processpoolexecutor”形成,它生成使用“threadpoolexecutor”实例运行给定任务的进程。
threadedprocess的Python项目详细描述
threadedprocesspoolexecutor类是使用 进程池,每个进程上有一个内部线程池来执行调用 异步的。
threadedprocesspoolexecutor由修改后的processpoolexecutor组成 使用线程池执行器的进程(最多有max_个进程) 实例(最多有max_个线程)来运行给定的任务。
如果max_processes是None或没有给定,它将默认为 机器上的处理器。
如果max_threads是None或没有给定,它将默认为 计算机上的处理器,乘以5。
示例
fromconcurrent.futuresimportas_completedimportmathfromthreadedprocessimportThreadedProcessPoolExecutorimportrequestsRNGURL="https://www.random.org/integers/?num=1&min=1&max=100000000&col=1&base=10&format=plain&rnd=new"defget_prime():n=int(requests.get(RNGURL).text)ifn%2==0:return(n,False)sqrt_n=int(math.floor(math.sqrt(n)))foriinrange(3,sqrt_n+1,2):ifn%i==0:return(n,False)return(n,True)withThreadedProcessPoolExecutor(max_processes=4,max_threads=16)asexecutor:futures=[]for_inrange(128):futures.append(executor.submit(get_prime))forfutureinas_completed(futures):print('%d is prime: %s'%future.result())