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)

相关推荐

  • 英文mv100首

    技术英文mv100首 英文mv100首用Raysource下载 CD1(1-20):fs2you://Y2FjaGVmaWxlMTgucmF5ZmlsZS5jb20vemgtY24vZG93bmxvYW

    礼包 2021年11月19日
  • 抖音刷粉丝网站,抖音自助下单平台业务秒刷网?

    技术抖音刷粉丝网站,抖音自助下单平台业务秒刷网?为什么你认为很好的作品却没有播放量?点赞评论也很少?那是因为你的账号还没有打标签,你是做美食的作品却推荐给了,喜欢做宠物的人点赞量王博率当然杀不来,如何快速给账号打标签?这

    测评 2021年10月19日
  • 怎么进行Nginx配置文件引用

    技术怎么进行Nginx配置文件引用怎么进行Nginx配置文件引用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Nginx配置文件有很多需要我们注意很多问

    攻略 2021年11月25日
  • 实用的MySQL常用优化方法有哪些

    技术实用的MySQL常用优化方法有哪些本篇内容主要讲解“实用的MySQL常用优化方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“实用的MySQL常用优化方法有哪些”吧

    攻略 2021年10月22日
  • php中for有什么作用

    技术php中for有什么作用这篇文章主要讲解了“php中for有什么作用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php中for有什么作用”吧!

    2021年11月9日
  • 使用docker容器化部署mysql

    技术使用docker容器化部署mysql 使用docker容器化部署mysqlwindows 安装 docker参考菜鸟教程下载安装 Docker Desktop Installer.exe
    因为要开启

    礼包 2021年10月28日