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修改操作系统时间的方法
May 18 Python
Python中的变量和作用域详解
Jul 13 Python
TensorFlow模型保存和提取的方法
Mar 08 Python
Django框架模板注入操作示例【变量传递到模板】
Dec 19 Python
Python 使用folium绘制leaflet地图的实现方法
Jul 05 Python
python自带tkinter库实现棋盘覆盖图形界面
Jul 17 Python
python pandas 时间日期的处理实现
Jul 30 Python
Python爬取智联招聘数据分析师岗位相关信息的方法
Aug 13 Python
Python实现二叉树的最小深度的两种方法
Sep 30 Python
python十进制转二进制的详解
Feb 07 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
Mar 10 Python
pycharm使用技巧之自动调整代码格式总结
Nov 04 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
附件名前加网站名
2008/03/23 PHP
试用php中oci8扩展
2015/06/18 PHP
Yii框架的redis命令使用方法简单示例
2019/10/15 PHP
浅析LigerUi开发中谨慎载入common.css文件
2013/07/09 Javascript
常规表格多表头查询示例
2014/02/21 Javascript
浅谈轻量级js模板引擎simplite
2015/02/13 Javascript
JQuery创建DOM节点的方法
2015/06/11 Javascript
JavaScript forEach()遍历函数使用及介绍
2015/07/08 Javascript
jQuery拖动布局其结果保存到数据库
2015/10/09 Javascript
JavaScript代码轻松实现网页内容禁止复制(代码简单)
2015/10/23 Javascript
javascript Promise简单学习使用方法小结
2016/05/17 Javascript
Vue父子组建的简单通信之控制开关Switch的实现
2018/06/04 Javascript
微信小程序定义和调用全局变量globalData的实现
2019/11/01 Javascript
vue+elementui通用弹窗的实现(新增+编辑)
2021/01/07 Vue.js
[04:55]完美世界副总裁蔡玮:DOTA2的自由、公平与信任
2013/12/18 DOTA
[59:08]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第一局
2016/02/27 DOTA
跟老齐学Python之print详解
2014/09/28 Python
Python的numpy库中将矩阵转换为列表等函数的方法
2018/04/04 Python
python matplotlib画图库学习绘制常用的图
2019/03/19 Python
利用anaconda作为python的依赖库管理方法
2019/08/13 Python
Python学习笔记之Break和Continue用法分析
2019/08/14 Python
Python实现LR1文法的完整实例代码
2020/10/25 Python
python中操作文件的模块的方法总结
2021/02/04 Python
商务英语本科生的自我评价分享
2013/11/15 职场文书
小松树教学反思
2014/02/11 职场文书
安全生产活动月方案
2014/03/09 职场文书
银行求职信怎么写
2014/05/26 职场文书
庆七一活动总结
2014/08/27 职场文书
法定代表人身份证明书
2014/09/10 职场文书
股东授权委托书范文
2014/09/13 职场文书
建设办主任四风问题整改思路和措施
2014/09/20 职场文书
小学教师师德整改措施
2014/09/29 职场文书
自荐信格式范文
2015/03/04 职场文书
预备党员介绍人意见
2015/06/01 职场文书
PhpSpreadsheet中文文档 | Spreadsheet操作教程实例
2021/04/01 PHP
vue使用watch监听属性变化
2022/04/30 Vue.js