Python中多线程和多处理的分析

技术Python中多线程和多处理的分析本篇内容主要讲解“Python中多线程和多处理的分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中多线程和多处理的分析”吧

本篇内容主要讲解"蟒蛇中多线程和多处理的分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"蟒蛇中多线程和多处理的分析"吧!

多线程

简单地说,线程允许您并行地运行程序。花费大量时间等待外部事件的任务通常适合线程化。它们也称为输入/输出绑定任务例如从文件中读写,网络操作或使用应用程序接口在线下载。让我们来看一个示例,它展示了使用线程的好处。

1. 没有线程

在本例中,我们希望通过顺序运行程序来查看从美国石油学会下载15张图像需要多长时间:

导入requestsimporttimeimg _ URL=[' https://]个图像。unsplash。com/photo-1516117172878-fd2c 41 F4 a 759 ',' https://图片。unsplash。com/photo-1532009324734-20 a7a 5813719 ',' https://图片。unsplash。com/photo-152444444444444669-6633 content not open(img _ name,' WB ')asimg _ file : img _ file。write(img _ bytes)# savegimagetodiskffinish=time。perf _ counter()# endtimer print(f '完成于{ round(finish-start,2)}秒)' #结果完成于23.1019267551秒一共用时23秒。

2. 多线程

让我们看看派顿中的线程模块如何显著地改进我们的程序执行:

从并发导入时间。futureimportthreadpooleexecutudefdownload _ images(URL): img _ name=img _ URL。split('/')[3]img _ bytes=请求。获取(img _ URL).contentwithopen(img_name,' WB ')asimg _ file : img _ file。write(img _ bytes)print(f ' { img _ name }被下载')start=time。perf _ counter()# starttimerwithThreadPoolExecutor :结果=executor。map(download _ images,img _ URL)# thissimilartmap(func,* iterables)finish=time。perf _ counter()# endtimerprint(f ' finished in { round(finish我们可以看到,与不使用线程代码相比,使用线程代码可以显著提高速度。从23秒到5秒。

对于本例,请注意在创建线程时存在开销,因此将线程用于多个应用程序接口调用是有意义的,而不仅仅是单个调用。

此外,对于密集的计算,如数据处理,图像处理多处理比线程执行得更好。

到此,相信大家对"蟒蛇中多线程和多处理的分析"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/66409.html

(0)

相关推荐

  • 显示器设置,戴尔2721d显示器设置

    技术显示器设置,戴尔2721d显示器设置1显示器设置、以win7系统为例,打开戴尔显示器,在屏幕左下角打开开始选项并选择其中的“控制面板”。
    2、然后在打开的“控制面板”中选择“外观和个性化”选项。
    3、然后在打开的新页

    生活 2021年10月27日
  • 如何将Linux上的PDB数据库转移到windows上的CDB数据库

    技术怎么将Linux上的PDB数据库传输到windows的CDB数据库本篇内容主要讲解“怎么将Linux上的PDB数据库传输到windows的CDB数据库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。

    攻略 2021年12月21日
  • ES6新特性常用的知识点有哪些

    技术ES6新特性常用的知识点有哪些这篇文章主要介绍了ES6新特性常用的知识点有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.关键字Let 关键字

    攻略 2021年11月13日
  • 椭圆的周长计算公式,椭圆的周长计算公式怎么算

    技术椭圆的周长计算公式,椭圆的周长计算公式怎么算椭圆周长计算公式:L=T(r+R)T为椭圆系数,可以由r/R的值,查表找出系数T值;r为椭圆短半径;R为椭圆长半径椭圆的周长计算公式。椭圆周长定理:椭圆的周长等于该椭圆短半

    生活 2021年10月23日
  • 怎么用Java设计一个短链接生成系统

    技术怎么用Java设计一个短链接生成系统这篇文章主要讲解了“怎么用Java设计一个短链接生成系统”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Java设计一个短链接

    攻略 2021年12月11日
  • STM32 GPIO的原理、特性、选型和配置是什么

    技术STM32 GPIO的原理、特性、选型和配置是什么这期内容当中小编将会给大家带来有关STM32 GPIO的原理、特性、选型和配置是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

    攻略 2021年12月3日