python学习——async/await
来源:互联网 发布:盘古网络建站 编辑:程序博客网 时间:2024/05/16 07:54
用asyncio
提供的@asyncio.coroutine
可以把一个generator标记为coroutine类型,然后在coroutine内部用yield from
调用另一个coroutine实现异步操作。
为了简化并更好地标识异步IO,从Python 3.5开始引入了新的语法async
和await
,可以让coroutine的代码更简洁易读。
请注意,async
和await
是针对coroutine的新语法,要使用新的语法,只需要做两步简单的替换:
- 把
@asyncio.coroutine
替换为async
; - 把
yield from
替换为await
。
让我们对比一下上一节的代码:
@asyncio.coroutinedef hello(): print("Hello world!") r = yield from asyncio.sleep(1) print("Hello again!")
用新语法重新编写如下:
async def hello(): print("Hello world!") r = await asyncio.sleep(1) print("Hello again!")
剩下的代码保持不变。
小结
Python从3.5版本开始为asyncio
提供了async
和await
的新语法;
注意新语法只能用在Python 3.5以及后续版本,如果使用3.4版本,则仍需使用上一节的方案。
0 0
- python学习——async/await
- python async/await
- c# 5.0——async 和 await
- Python异步编程Async/Await
- 玩转 Python 3.5 的 await/async
- C#——await与async实现多线程异步编程
- C# 5.0 新特性——Async和Await
- await-async
- async await
- async/await
- async&await
- Async/Await
- async/await
- async/await
- async/await
- async/await
- async/await
- async/await
- mysql order by 优化 |order by 索引的应用
- 业务SQL那些事--慎用LIMIT
- Odd Even Linked List
- 隐含马尔可夫模型
- java异常
- python学习——async/await
- hdu 5419(数学期望)
- 【PHP开发】curl的使用
- MySQL随机获取数据的方法,支持大数据量
- 彩色图像的反转
- CSS Transitions and Transforms
- MySQL5.7 Replication主从复制配置教程
- 收藏网站
- 什么叫sql注入,如何防止sql注入