进程池与线程池

07.07自我总结

进程池与线程池

一.进程池与线程池的函数的导入

进程池:from concurrent.futuresimport ProcessPoolExecutor函数

线程池:from concurrent.futuresimport ThreadPoolExecutor线程

二.进程池与线程池的定义

1.进程池的定义

pool = ProcessPoolExecutor(3)code

  • 设置最大进程为3
  • 建立进程池,指定最大进程数为3,此时不会建立进程,不指定数量时,默认为CPU和核数

pool.submit(方法,传参)对象

若是传的是两个值进程

pool.submit(方法,参数1,参数2)资源

对于提交对象中有几个经常使用的方法:it

res = pool.submit(方法,参数)import

res.result()线程池

result是个阻塞函数,直到子线程任务结束,且返回方法的结果方法

res.add_done_callback(方法2)

将结果进程执行的结果当一个参数传入方法二中

2.线程池的定义

与进程池类似

3.注意

进程池定义和运行尽可能放在main里面,比然可能会发生重复定义进程池

三.使用场景

线程方法相同,且须要重复使用,这个能够用进程池或者线程池,能够减小建立和关闭进程线程是所消耗的资源

相关文章
相关标签/搜索