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牛刀小试密码爆破
Feb 03 Python
基于进程内通讯的python聊天室实现方法
Jun 28 Python
python学习基础之循环import及import过程
Apr 22 Python
解决在Python编辑器pycharm中程序run正常debug错误的问题
Jan 17 Python
在Python中通过getattr获取对象引用的方法
Jan 21 Python
Python3.5装饰器典型案例分析
Apr 30 Python
python3.4+pycharm 环境安装及使用方法
Jun 13 Python
Python线程障碍对象Barrier原理详解
Dec 02 Python
基于注解实现 SpringBoot 接口防刷的方法
Mar 02 Python
python实现Thrift服务端的方法
Apr 20 Python
如何用Python搭建gRPC服务
Jun 30 Python
Python爬虫中urllib3与urllib的区别是什么
Jul 21 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
PHP安装问题
2006/10/09 PHP
用sql命令修改数据表中的一个字段为非空(not null)的语句
2010/06/04 PHP
PHP仿盗链代码
2012/06/03 PHP
php强大的时间转换函数strtotime
2016/02/18 PHP
php实现转换html格式为文本格式的方法
2016/05/16 PHP
php文件上传原理与实现方法详解
2019/12/20 PHP
ThinkPHP5&5.1实现验证码的生成、使用及点击刷新功能示例
2020/02/07 PHP
超级简单的图片防盗(HTML),好用
2007/04/08 Javascript
jQuery Lightbox 图片展示插件使用说明
2010/04/25 Javascript
13 个JavaScript 性能提升技巧分享
2012/07/26 Javascript
js汉字转拼音实现代码
2013/02/06 Javascript
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
javascript中的遍历for in 以及with的用法
2014/12/22 Javascript
JS设置网页图片vspace和hspace属性的方法
2015/04/01 Javascript
jQuery的事件委托实例分析
2015/07/15 Javascript
浅谈javascript中new操作符的原理
2016/06/07 Javascript
针对BootStrap中tabs控件的美化和完善(推荐)
2016/07/06 Javascript
JavaScript计算器网页版实现代码分享
2016/07/15 Javascript
Javascript OOP之面向对象
2016/07/31 Javascript
bootstrap输入框组使用方法
2017/02/07 Javascript
简单实现JavaScript弹幕效果
2020/08/27 Javascript
webpack踩坑之路图片的路径与打包
2017/09/05 Javascript
jQuery zTree 异步加载添加子节点重复问题
2017/11/29 jQuery
vue-cli脚手架config目录下index.js配置文件的方法
2018/03/13 Javascript
浅谈JavaScript闭包
2019/04/09 Javascript
浅析我对JS延迟异步脚本的思考
2020/10/12 Javascript
多种类型jQuery网页验证码插件代码实例
2021/01/09 jQuery
python类继承用法实例分析
2014/10/10 Python
numpy 进行数组拼接,分别在行和列上合并的实例
2018/05/08 Python
全球性的在线时尚男装零售商:boohooMAN
2016/12/17 全球购物
小学评语大全
2014/04/22 职场文书
基督教追悼会答谢词
2015/09/29 职场文书
《纸船和风筝》教学反思
2016/02/18 职场文书
2016年敬老月活动总结
2016/04/05 职场文书
vue判断按钮是否可以点击
2022/04/09 Vue.js
GO中sync包自由控制并发示例详解
2022/08/05 Golang