第99p,用简单案例说明同步与异步的区别

领取福利
大家好 , 我是杨数Tos , 这是《从零基础到大神》系列课程的第99篇文章 , 第三阶段的课程:Python进阶知识:用一个简单的案例说明同步与异步之间的区别 , 以及异步的效率 。
第99p,用简单案例说明同步与异步的区别
文章图片
异步的原理已经在前面的文章讲过 , 本文主要比较同步与异步的差异;使用一个模拟下载文件的案例 , 比较同步与异步在效率上的差异 。
第99p,用简单案例说明同步与异步的区别
文章图片
1、使用同步的方式下载文件
从程序执行的顺序上可以看出 , 同步下载文件时会按照顺序进行下载 , 如果遇到了IO阻塞;程序暂停 , 等待IO阻塞结束 , 继续执行程序 。
第99p,用简单案例说明同步与异步的区别
文章图片
在这个案例中 , 模拟下载5个文件并阻塞程序1秒 , 使用同步下载时总共用了5.06秒 。
2、使用异步的方式下载文件
异步程序的执行顺序则完全不一样 , 当程序遇到IO阻塞时 , 程序会跳到另外的任务继续执行;当被阻塞的任务可以继续执行时 , 程序会跳回原来的位置继续往下执行 , 从效率上看异步比同步要快很多 。
第99p,用简单案例说明同步与异步的区别
文章图片
在这个案例中 , 同样也是模拟下载5个文件并阻塞程序1秒 , 使用异步下载总共用了3.04秒 。
通过简单的案例已经看出异步的效率;
本文中的案例仅仅是下载5个文件 , 如果是几十万或几百万个文件同时下载 , 会更明显感受到异步的效率 。
如果是异步+多线程 , 那绝对是“我一秒钟几十万 , 分分钟几百万” 。
第99p,用简单案例说明同步与异步的区别
文章图片
以上是本期内容 , 如果有表达不对的内容 , 欢迎您的留言、斧正 , 我们一起天天向上 。
感谢您的阅读 , 您的三连【关注、点赞、收藏】就是对我最大的支持 , 谢谢!
本文由杨数Tos原创 , 欢迎关注 , 带你一起长知识 。
推荐内容
第99p,用简单案例说明同步与异步的区别】量化交易公开课