await的原理没搞清楚

await的原理没搞清楚

一分多钟时候,老师的原话是:“使用await,它(1)就会把程序(2)的控制权交出去,就可以执行后面的业务(3)逻辑代码,直到耗时的操作完成后,再回来执行这一块业务(4)逻辑”,这段话反映到上节课的sleep例子里,我更懵了,完全没搞明白我划线部分老师是指的哪和哪。。老师能具体解释一下吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学,你好。执行await,会让协程处于等待状态,即await会把协程的执行权交给别的程序,此时别的程序就可以执行起来,也就是执行后面的逻辑代码,直到其他程序交出执行权或者执行完了,才会再次回到await所在的协程,运行await之后的逻辑代码。

反映到上节课的sleep例子里,是在上节课讲了await asyncio.sleep(),老师在视频中运行了此段代码,程序会暂停几秒的时间,体现了await的作用。

如果解决了你的疑惑,请采纳,祝学习愉快~ 

  • 江民川 提问者 #1
    await xxxxx,这个xxxxx是不是也要是一个协程?
    2020-05-21 18:47:55
  • 好帮手慕笑蓉 回复 提问者 江民川 #2
    同学,你好。老师视频中 await 后是一个异步函数,也是协程,await后需要是异步函数。 祝学习愉快~
    2020-05-21 20:04:39
  • 江民川 提问者 回复 好帮手慕笑蓉 #3
    异步函数是什么?asyncio模块下的所有函数都是异步函数吗?
    2020-05-22 09:25:31
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师