大家好,我是杨数Tos,这是《从零基础到大神》系列课程的第96篇文章,第三阶段的课程:Python进阶知识:简单讲讲在PYthon中实现协程异步的4种方式(上篇)。
1、进程、线程与协程之间的区别
进程、线程、协程都是计算机中常见的概念,很多人对这3个程之间的区别不太理解;
进程是占据资源的单位,不干活的;
线程是具体执行(干活)的单位;
协程在计算机中并不是真实存在的,有点类似于算法并不是真实存在,只是我们构造出来的逻辑;
用一个不太恰当的例子说明3个程之间的区别:
进程好比是文件夹,虽然占据着硬盘空间,但是并没有具体的执行功能;线程就是文件夹中的文档,图片文档存储着图片,txt文档存储着文字;
如果计算机是单核单线程的情况下,我们想打开多个图片或多个txt文档,在计算机内部不断切换线程的这个过程(或算法)就是协程;
2、协程相关的概念
协程函数与协程对象,在Python3.7以后的版本中,把async+def+函数名这种方式定义的函数称为协程函数,协程函数名() 称为协程对象;
协程函数的调用方式与通用函数的调用方式不同,函数名+括号【即:fun()】无法执行协程函数内的代码,需要通过事件循环器执行协程函数的代码;
3、Python中实现异步协程的4种方式
greenlet实现、yield关键字实现、通过asyncio装饰器实现、async+await关键字实现;
具体实现方式后面的文章详述。
以上是本期内容,如果有表达不对的内容,欢迎您的留言、斧正,我们一起天天向上。
感谢您的阅读,您的三连【关注、点赞、收藏】就是对我最大的支持,谢谢!
本文由杨数Tos原创,欢迎关注,带你一起长知识。