python线程池ThreadPoolExecutor,传单个参数和多个参数方式
作者:东贝鸟 发布时间:2022-01-20 19:49:45
标签:python,线程池,ThreadPoolExecutor,参数
python线程池ThreadPoolExecutor,传单个参数和多个参数
这是线程池传单个参数的
from concurrent.futures import ThreadPoolExecutor,as_completed
def test(a):
print(a)
qq = {"a":"1","b":"2","c":"3"}
with ThreadPoolExecutor() as pool:
for j ,k in qq.items():
res = pool.submit(test,j)
kk = res.result()
下面是传多个参数的
from concurrent.futures import ThreadPoolExecutor,as_completed
def test(a,b):
print(a,b)
qq = {"a":"1","b":"2","c":"3"}
with ThreadPoolExecutor() as pool:
for j ,k in qq.items():
res = pool.submit(lambda cxp:test(*cxp),(j ,k))
last= res.result())
主要就是 pool.submit(lambda cxp:test(*cxp),(j ,k))
这行代码要拆开来看
首先就是匿名函数 :lambda cxp:test(*cxp) 这是第一步
这个的意思是:传cxp参数,传到test里
第二步就是 submit(lambda cxp:test(cxp),(j ,k))
sumbit的方法是要传两个参数的,第一个是一个函数,第二个是这个函数的参数
刚刚匿名函数就是第一个参数,然后(j,k)是第二参数,这个参数是要传给函数的,于是 (j,k)就给了cxp
python线程池传入多个参数 ThreadPoolExecutor.submit 多参数支持
from concurrent.futures import ThreadPoolExecutor,as_completed
def doFileParse(filepath,segment,wordslist):
print(filepath)
print(segment)
#调用方法
#实质就是通过lambda表达式过渡。传入的参数是一个,但是通过lambda表达多后拆散为多个传入。这是很巧妙的方法,实际 就是 *p 这个表达式。
args =[filepath,thu1,Words]
newTask=executor.submit(lambda p: doFileParse(*p),args)
来源:https://blog.csdn.net/weixin_45393723/article/details/122666456


猜你喜欢
- 简介Python 中有个序列化过程叫作 pickle,它能够实现任意对象与文本之间的相互转化,也可以实现任意对象与二进制之间的相互转化。也就
- MySQL中模式就是数据库SHOW DATABASES;show databases;罗列所有数据库名称CREATE DATABASE &l
- 边缘在人类视觉和计算机视觉中均起着重要的作用。人类能够仅凭一张背景剪影或一个草图就识别出物体类型和姿态。其中OpenCV提供了许多边缘检测滤
- 排序算法是《数据结构与算法》中最基本的算法之一,也是面试必背题,为方便技术交流,文末创建技术交流群。排序算法可以分为内部排序和外部排序,内部
- 在开始使用Go进行编码时,Defer是要关注的一个很重要的特性。它非常简单:在任何函数中,给其他函数的调用加上前缀 defer以确保该函数在
- SQL2005的存储过程: set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER PROC
- 利用ASP从远程服务器上接收XML数据<% dim objXML dim objRootElement dim&n
- 和大多数的语言脚本一样,学习ASP最好的方法就是亲身尝试ASP,使用你自己的系统安装PWS或者IIS。你可以边学习边在你自己的服务器上测试A
- 内容摘要:这篇文章的主旨是弄清楚如何根据实际需求实现一个联动菜单以及联动菜单的原理,实例是实现一个日期选择下拉菜单。首先来分析一下日期下拉菜
- 开发目的这算是node应用的第二个小应用吧,主要目的是熟悉node和express框架。原理很简单:在node搭建的环境下引用第三方包处理图
- 第一次用layui,正在摸索中,今天在学习layui的时候在项目中看到一个表单提交,表单的数据传到后台是怎么自动封装到实体类里面的呢?1、表
- 初识项目打开VS2015,创建Web项目,选择ASP.NET Web Application,在弹出的窗口里选择ASP.NET 5 Webs
- 1.re.match()re.match()的概念是从头匹配一个符合规则的字符串,从起始位置开始匹配,匹配成功返回一个对象,未匹配成功返回N
- 本文实例讲述了微信小程序时间轴实现方法。分享给大家供大家参考,具体如下:最近项目需要在页面上做一个时间轴,又是第一次做,而且还是在小程序上,
- 前言其实容器类型的转换可以说是数据类型的转换,涉及到三个函数,分别是tuple()、list()、set()。为什么要做容器类型的转换,是因
- 如下所示:import pymysqlimport timeimport redef get_raw_label(rece): re1 =
- 本文实例为大家分享了JS实现轮播图特效的具体代码,供大家参考,具体内容如下知识点轮播图思想:① 建立一个全局变量索引,始终标记当前显示图片。
- 1、命令模式(按Esc键):Enter:转入编辑模式Shift-Enter:运行本单元,选中下个单元Ctrl-Enter:运行本单元Alt-
- 虽然在Python中的for循环与其它语言不大一样,但跳出循环还是与大多数语言一样,可以使用关键字continue跳出本次循环或者break
- 1 分类图像滤波按图像域可分为两种类型:邻域滤波(Spatial Domain Filter),其本质是数字窗口上的数学运算。一般用于图像平