python concurrent.futures模块如何使用
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要介绍了python concurrent.futures模块如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python concurrent.futu
千家信息网最后更新 2025年11月07日python concurrent.futures模块如何使用
这篇文章主要介绍了python concurrent.futures模块如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python concurrent.futures模块如何使用文章都会有所收获,下面我们一起来看看吧。
概述
concurrent.futures 是 3.2 中引入的新模块,它为异步执行可调用对象提供了高层接口。
可以使用 ThreadPoolExecutor 来进行多线程编程,ProcessPoolExecutor 进行多进程编程,两者实现了同样的接口,这些接口由抽象类 Executor 定义。
这个模块提供了两大类型,一个是执行器类 Executor,另一个是 Future 类。
执行器用来管理工作池,future 用来管理工作计算出来的结果,通常不用直接操作 future 对象,因为有丰富的 API。
说明
Python3.2开始,标准库为我们提供了concurrent.futures模块,它提供了ThreadPoolExecutor和ProcessPoolExecutor两个类,实现了对threading和multiprocessing的进一步抽象,对编写线程池/进程池提供了直接的支持.
#! /usr/bin/env python# -*- coding: utf-8 -*-## -------------------------------------------------------------------------------# Name: demo3# Author: yunhgu# Date: 2021/7/8 15:17# Description: # -------------------------------------------------------------------------------import osimport timeimport threadingfrom concurrent.futures import ProcessPoolExecutor, ThreadPoolExecutor, as_completeddef work(x): time.sleep(1) temp = f"父进程{os.getppid()}:子进程{os.getpid()}:线程{threading.get_ident()}:{x}" return tempdef sub_thread(): temp_list = [] with ThreadPoolExecutor(max_workers=3) as t: task_list = [t.submit(work, i) for i in range(5)] for task in as_completed(task_list): if task.done(): temp_list.append(task.result()) return temp_listdef main(): print(f"主进程:{os.getpid()}") path_list = [] with ProcessPoolExecutor(max_workers=3) as p: task_list = [p.submit(sub_thread) for i in range(5)] for task in as_completed(task_list): if task.done(): path_list.append(task.result()) for path in path_list: print(path)if __name__ == "__main__": main()
关于"python concurrent.futures模块如何使用"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"python concurrent.futures模块如何使用"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
模块
进程
接口
知识
线程
内容
对象
管理工作
篇文章
执行器
工作
管理
编程
不用
两个
价值
操作简单
文章
易懂
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
泰山2288服务器管理密码
护苗网络安全工作简报
铜川网络技术推荐厂家
pc网络安全隔离卡7.0
数据库有大量图片怎么优化
it咨询与软件开发
北京云音网络技术有限公司
什么是域服务器
达梦数据库主要用户
中国哪些大学有网络安全学科
部队陷阱网络安全教育片
虚拟主机跟云服务器吗
计算机网络技术可以进入哪些行业
华中科技大学网络安全课程
广东应用软件开发要多少钱
国家设立网络安全法的在于
信息技术软件开发规定
深圳富盟网络技术有限公司
网络技术课本百度云
俄罗斯服务器生产设备
lol选择完英雄就卡在服务器上
平谷区专业软件开发要求
服务器默认几个用户名
苏州报修管理软件开发
cdma网络技术优势
网络技术进行教学管理
计算机网络数据库应用程序
西安的哪些银行软件开发中心
中国技术设备数据库
交大代理 代理服务器