本节我们讲以Python 3.7 上的asyncio为例讲解如何使用Python的异步IO。
Python的asyncio是使用 async/await 语法编写并发代码的标准库。通过上一节的讲解,我们了解了它不断变化的发展历史。到了Python最新稳定版 3.7 这个版本,asyncio又做了比较大的调整,把这个库的API分为了 高层级API和低层级API,并引入asyncio.run()这样的高级方法,让编写异步程序更加简洁。
编程中,我们经常会遇到“并发”这个概念,目的是让软件能充分利用硬件资源,提高性能。并发的方式有多种,多线程,多进程,异步IO等。多线程和多进程更多应用于CPU密集型的场景,比如科学计算的时间都耗费在CPU上,利用多核CPU来分担计算任务。多线程和多进程之间的场景切换和通讯代价很高,不适合IO密集型的场景(关于多线程和多进程的特点已经超出本文讨论的范畴,有兴趣的同学可以自行搜索深入理解)。而异步IO就是非常适合IO密集型的场景,比如网络爬虫和Web服务。
微信扫码
服务时间
周一至周日 12:00-22:00
php htmlspecialchars()函数将特殊字符转换为HTML实体
JS如何生成随机唯一认证码,以及存储cookie读取cookie删除cookie详细用法
对于2.4Ghz和5Ghz共用的SSID,怎样择一使用?
逻辑算法题,积木接雨水二问题
逻辑算法题,积木接雨水问题