协程不是计算机中存在的,
计算机只有进程和线程,协程是程序员创造出来的
协程也可以叫做微线程,用户态来回切换,
协程就是用一个线程,来回切换运行
gevent这个是最早的,不入流
yield用这个也可以实现
python3.4
python3.5 asynico await
协程的意义:
在一个线程中,如果遇到IO需要等待,我们不会傻傻的等着
利用这个时间,再去做一点别的事,
充分利用线程,不让他闲着。
同步:排队一个一个执行
异步:不排队,不等A完成,马上开启B
异步:可以用进程 线程 协程 去实现
其实他是一个死循环,然后去检测执行某些代码
每个任务都是有状态的,
协程函数:
asynic def fun ():pass
协程对象
fun()
await:变成串行,等待那个,下一步依赖上一步的结果。
await+3种可等待的
协程对象
future
task对象
await asynic.sleep(3)#等待3秒
await asynic def fun():pass
task对象:注意:asyncio.create_task() 函数在 Python 3.7 中被加入。在 Python 3.7 之前,可以改用低层级的 asyncio.ensure_future() 函数。
内部就是一个集合,我们要去集合里面去拿数据,这个结果,