python并发处理concurrent.futures
来源:互联网 发布:想做淘宝主播要培训吗 编辑:程序博客网 时间:2024/05/20 14:25
import concurrent.futures
import time
声明数组列表
num_list=range(1,11)
声明一个计数函数
def count(n):
for i in range(10000):
i+=i
return i*n
声明一个工作函数
def work(x):
result=count(x)
print(‘{}的计算结果是{}’.format(x,result))
声明按照顺序工作的函数
def sequence():
start_time=time.clock()
for i in num_list:
work(i)
print(‘运行时间为{}’.format(time.clock-start_time))
声明多线程工作的方法
def thread_exe():
start_time=time.clock()
with concurrent.futures.ThreadPoolExecutor(max_workers=5) as executor:
for i in num_list:
executor.submit(work,i)
print(‘运行时间为{}’.format(time.clock-start_time))
声明多进程工作的方法
def multiprocess_exe():
start_time=time.clock()
with concurrent.futures.ProcessPoolExecutor(max_workers=5) as executor:
for i in num_list:
executor.submit(work,i)
print(‘运行时间为{}’.format(time.clock-start_time))
if name == ‘main‘:
分别运行
sequence()
thread_exe()
multiprocess_exe()
sequence的运行结果
1计算的结果是19999998
2计算的结果是39999996
3计算的结果是59999994
4计算的结果是79999992
5计算的结果是99999990
6计算的结果是119999988
7计算的结果是139999986
8计算的结果是159999984
9计算的结果是179999982
10计算的结果是199999980
计算的时间:4.653966205959382
thread_exe的运行结果
2计算的结果是39999996
4计算的结果是79999992
3计算的结果是59999994
1计算的结果是19999998
5计算的结果是99999990
6计算的结果是119999988
8计算的结果是159999984
7计算的结果是139999986
10计算的结果是199999980
9计算的结果是179999982
计算的时间4.656093410957656
mutiprocessing_exe的运行结果
1计算的结果是19999998
3计算的结果是59999994
4计算的结果是79999992
6计算的结果是119999988
7计算的结果是139999986
8计算的结果是159999984
2计算的结果是39999996
5计算的结果是99999990
9计算的结果是179999982
10计算的结果是199999980
计算的时间1.5563637145214544
多线程处理io密集型
多进程处理 计算密集型
- python并发处理concurrent.futures
- python并发之concurrent.futures
- python并发之concurrent.futures
- python并发库:concurrent.futures的使用
- python异步并发模块concurrent.futures简析
- Python并发concurrent.futures和asyncio
- python concurrent.futures并发库 多进程 多线程
- Python中使用 futures 处理并发
- python concurrent.futures 简单应用
- Python concurrent.futures 文档翻译
- Python 标准库简介concurrent.futures
- Concurrent.futures vs Multiprocessing
- concurrent.futures源码解析
- java.util.concurrent 并发处理
- Java Concurrent处理并发需求
- java concurrent系列1---Java并发处理
- 35、concurrent.futures模块与协程
- 35、concurrent.futures模块与协程
- AndroidImageView 中scaleType 的使用
- iOS-如何开发一款类 Runkeeper 的跑步应用 (下)
- php 图片和文字合成图片技术
- 设备文件的标记
- rockchip Andy---Android Hal 分析
- python并发处理concurrent.futures
- MySQL基础(1)——基本概念
- C代码编译成在android上的可执行程序
- write
- HDU 5448 Marisa’s Cake(n个点中任意点组成的多边形面积之和)
- hdu5448-Marisa’s Cake 构成的所有多边形面积的和
- 深度学习——激活函数
- JavaScript快速入门(一)
- RobotStudio结课作业——汽车覆盖件锻压/焊接/喷涂过程工作站