Python 多线程和多进程

文章介绍了如何在Python中使用multiprocessing模块进行多进程处理,包括定义处理函数、创建Pool并使用map函数提交任务。同时,也展示了如何利用concurrent.futures的ThreadPoolExecutor进行多线程操作,以及如何传递固定参数。
摘要由CSDN通过智能技术生成

多进程:

        from multiprocessing import Pool                #导包

        #定义处理数据的函数

        def main(data):

                pass

        datalist = []                #把要处理的数据保存到列表中

        with Pool(24) as pool:                #使用with语句打开24个进程

                pool.map(main,datalist)        #把处理函数和数据通过map函数进行提交,也可以通过其他函数进行提交,根据自己的情况定

        

        #当要传递多个固定参数

        from functools import partial

        def main(data,par)                #多增加一个变量去接收产生,多个固定参数可以用索引进行调用

                pass,

        datalist = []

        par = partial(main,par=(......))  #把要传递多个的固定参数写入元组,一个就不需要

        with Pool(36) as pool:

                pool.map(par,datalist)

多线程:

        from concurrent.futures import ThreadPoolExecutor        #导包

        #定义处理函数

        def main(data):

                pass

        datalist = []

        with ThreadPoolExecutor(24) as Executor:

                Executor.map(main,datalist)        #通过map函数提交

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fly.Py

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值