zoukankan      html  css  js  c++  java
  • 进程池与线程池

    07.07自我总结

    进程池与线程池

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

    进程池:from concurrent.futures import ProcessPoolExecutor

    线程池:from concurrent.futures import ThreadPoolExecutor

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

    1.进程池的定义

    pool = ProcessPoolExecutor(3)

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

    pool.submit(方法,传参)

    如果传的是两个值

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

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

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

    res.result()

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

    res.add_done_callback(方法2)

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

    2.线程池的定义

    与进程池相似

    3.注意

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

    三.使用场景

    线程方法相同,且需要重复使用,这个可以用进程池或者线程池,可以减少创建和关闭进程线程是所消耗的资源

  • 相关阅读:
    遇到屏蔽selenium的站点如何突破
    subprocess.Popen stdout重定向内容实时获取
    thinkphp Composer安装指南
    职场片
    php。。。
    多线程相关
    狂刷1000题~~2
    狂刷1000题~~1
    关于eclipse中看不到源码的问题
    一篇看懂++i i++
  • 原文地址:https://www.cnblogs.com/pythonywy/p/11146730.html
Copyright © 2011-2022 走看看