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 16 Python
Python中防止sql注入的方法详解
Feb 25 Python
Python设计模式之MVC模式简单示例
Jan 10 Python
Tornado 多进程实现分析详解
Jan 12 Python
Tensorflow 训练自己的数据集将数据直接导入到内存
Jun 19 Python
浅谈python标准库--functools.partial
Mar 13 Python
Python内置方法实现字符串的秘钥加解密(推荐)
Dec 09 Python
python中设置超时跳过,超时退出的方式
Dec 13 Python
Django多进程滚动日志问题解决方案
Dec 17 Python
Pyecharts绘制全球流向图的示例代码
Jan 08 Python
Numpy 理解ndarray对象的示例代码
Apr 03 Python
python Selenium 库的使用技巧
Oct 16 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
全国FM电台频率大全 - 10 江苏省
2020/03/11 无线电
php图片加中文水印实现代码分享
2012/10/31 PHP
解析php curl_setopt 函数的相关应用及介绍
2013/06/17 PHP
PHP图片等比例缩放生成缩略图函数分享
2014/06/10 PHP
windows7下安装php的php-ssh2扩展教程
2014/07/04 PHP
php通过pecl方式安装扩展的实例讲解
2018/02/02 PHP
PHP+redis实现的购物车单例类示例
2019/02/02 PHP
ext for eclipse插件安装方法
2008/04/27 Javascript
jQuery之尺寸调整组件的深入解析
2013/06/19 Javascript
JS可以控制样式的名称写法一览
2014/01/16 Javascript
jQuery获取和设置表单元素的方法
2014/02/14 Javascript
jQuery ajax调用WCF服务实例
2014/07/16 Javascript
浅谈javascript中的加减时间
2016/07/12 Javascript
详解使用vue实现tab 切换操作
2017/07/03 Javascript
js实现轮播图的两种方式(构造函数、面向对象)
2017/09/30 Javascript
解决Jquery下拉框数据动态获取的问题
2018/01/25 jQuery
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
js实现unicode码字符串与utf8字节数据互转详解
2019/03/21 Javascript
Vue实战教程之仿肯德基宅急送App
2019/07/19 Javascript
BootStrap表单验证中的非Submit类型按钮点击时触发验证的坑
2019/09/05 Javascript
[01:29]2017 DOTA2国际邀请赛官方英雄手办展示
2017/03/18 DOTA
Python实现的金山快盘的签到程序
2013/01/17 Python
Python实现的一个简单LRU cache
2014/09/26 Python
跟老齐学Python之编写类之一创建实例
2014/10/11 Python
Python实现的爬虫功能代码
2017/06/24 Python
pycharm远程调试openstack的图文教程
2017/11/21 Python
tensorflow入门之训练简单的神经网络方法
2018/02/26 Python
Django 使用logging打印日志的实例
2018/04/28 Python
python+pyqt5编写md5生成器
2019/03/18 Python
Python实现带下标索引的遍历操作示例
2019/05/30 Python
Python求正态分布曲线下面积实例
2019/11/20 Python
党员批评与自我批评发言
2014/10/02 职场文书
社区党的群众路线教育实践活动总结材料
2014/10/31 职场文书
小程序教您怎样你零成本推广获取数万用户的方法
2019/07/30 职场文书
苹果发布了MagSafe固件更新,可以不外接电源实现最高7.5W充电
2022/04/21 数码科技
利用Apache Common将java对象池化的问题
2022/06/16 Servers