Python 线程池模块之多线程操作代码


Posted in Python onMay 20, 2021

1、线程池模块

引入

from concurrent.futures import ThreadPoolExecutor

2、使用线程池

一个简单的线程池使用案例

from concurrent.futures import ThreadPoolExecutor
import time

pool = ThreadPoolExecutor(10, 'Python')

def fun():
    time.sleep(1)
    print(1, end='')


if __name__ == '__main__':
    # 列表推导式
    [pool.submit(fun) for i in range(20) if True]
from concurrent.futures import ThreadPoolExecutor
import time

pool = ThreadPoolExecutor(10, 'Python')

def fun(arg1,arg2):
    time.sleep(1)
    print(arg1, end=' ')
    print(arg2, end=' ')


if __name__ == '__main__':
    # 列表推导式
    [pool.submit(fun,i,i) for i in range(20) if True]
    # 单个线程的执行
    task = pool.submit(fun,'Hello','world')
    # 判断任务执行状态
    print(f'task status {task.done()}')
    time.sleep(4)
    print(f'task status {task.done()}')

    # 获取结果的函数是阻塞的,所以他会等线程结束之后才会输出
    print(task.result())

 3、获取结果

阻塞等待

print(task.result())

批量获取结果

for future in as_completed(all_task):
    data = future.result()

阻塞主线程,等待执行结束再执行下一个业务

# 等待线程全部执行完毕
wait(pool.submit(fun,1,2),return_when=ALL_COMPLETED)
print('')

以上就是Python 线程池模块之多线程操作代码的详细内容,更多关于Python 线程池模块的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
教大家玩转Python字符串处理的七种技巧
Mar 31 Python
Python实现iOS自动化打包详解步骤
Oct 03 Python
python pygame实现2048游戏
Nov 20 Python
使用pandas实现csv/excel sheet互相转换的方法
Dec 10 Python
Python解析、提取url关键字的实例详解
Dec 17 Python
在PyCharm中批量查找及替换的方法
Jan 20 Python
Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】
Oct 17 Python
django序列化serializers过程解析
Dec 14 Python
python如何实现不可变字典inmutabledict
Jan 08 Python
jupyter 使用Pillow包显示图像时inline显示方式
Apr 24 Python
Python xmltodict模块安装及代码实例
Oct 05 Python
python安装及变量名介绍详解
Dec 12 Python
pytorch中[..., 0]的用法说明
May 20 #Python
浅谈pytorch中stack和cat的及to_tensor的坑
May 20 #Python
pytorch实现手写数字图片识别
解决python3安装pandas出错的问题
May 20 #Python
python 如何在list中找Topk的数值和索引
May 20 #Python
Requests什么的通通爬不了的Python超强反爬虫方案!
python使用glob检索文件的操作
You might like
Oracle 常见问题解答
2006/10/09 PHP
发挥语言的威力--融合PHP与ASP
2006/10/09 PHP
php in_array 函数使用说明与in_array需要注意的地方说明
2010/04/13 PHP
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
2013/06/05 PHP
CentOS 安装 PHP5.5+Redis+XDebug+Nginx+MySQL全纪录
2015/03/25 PHP
Laravel与CI框架中截取字符串函数
2016/05/08 PHP
Laravel模型事件的实现原理详解
2018/03/14 PHP
JS实现拖动示例代码
2013/11/01 Javascript
jquery淡化版banner异步图片文字效果切换图片特效
2014/04/08 Javascript
node.js中的http.response.getHeader方法使用说明
2014/12/14 Javascript
JS实现文字向下滚动完整实例
2015/02/06 Javascript
angularjs学习笔记之简单介绍
2015/09/26 Javascript
微信小程序小组件 基于Canvas实现直播点赞气泡效果
2020/05/29 Javascript
JavaScript数据结构中栈的应用之表达式求值问题详解
2017/04/11 Javascript
详解angularJs指令的3种绑定策略
2017/04/13 Javascript
vue2导航根据路由传值,而改变导航内容的实例
2017/11/10 Javascript
深入理解js A*寻路算法原理与具体实现过程
2018/12/13 Javascript
vuex如何重置所有state(可定制)
2019/01/17 Javascript
jquery validate 实现动态增加/删除验证规则操作示例
2019/10/28 jQuery
vue 实现特定条件下绑定事件
2019/11/09 Javascript
vue中实现图片压缩 file文件的方法
2020/05/28 Javascript
nuxt.js写项目时增加错误提示页面操作
2020/11/05 Javascript
[52:44]VGJ.T vs infamous Supermajor小组赛D组败者组第一轮 BO3 第一场 6.3
2018/06/04 DOTA
Python实现的一个简单LRU cache
2014/09/26 Python
Python中GeoJson和bokeh-1的使用讲解
2019/01/03 Python
python实现五子棋人机对战游戏
2020/03/25 Python
Python大数据之网络爬虫的post请求、get请求区别实例分析
2019/11/16 Python
pytorch forward两个参数实例
2020/01/17 Python
html5 Canvas画图教程(11)—使用lineTo/arc/bezierCurveTo画椭圆形
2013/01/09 HTML / CSS
会走动的图形html5时钟示例
2014/04/27 HTML / CSS
世界上最伟大的马产品:Equiderma
2020/01/07 全球购物
档案检查欢迎词
2014/01/13 职场文书
求职自荐信怎么写
2014/03/06 职场文书
检察机关个人对照检查材料
2014/09/15 职场文书
庆祝新中国成立65周年“向国旗敬礼”网上签名寄语
2014/09/27 职场文书
2014年销售部工作总结
2014/12/01 职场文书