async
/await
(语法和关键字)在Python 3.5中与C#中的async
/await
非常相似。
C#示例:
async void asyncTask(){
await asyncMethod()
}
Python示例:
async def asyncTask():
await async_method()
问题: Python 3.5中的async/await是否受到C#中的async/await的启发?如果是,为什么会这样?
async
/await
(语法和关键字)在Python 3.5中与C#中的async
/await
非常相似。
C#示例:
async void asyncTask(){
await asyncMethod()
}
Python示例:
async def asyncTask():
await async_method()
问题: Python 3.5中的async/await是否受到C#中的async/await的启发?如果是,为什么会这样?
在PEP 492(添加await
和async
关键字的提案)中提到了C#也使用它们(除其他语言外):
异步/等待在编程语言中并不是一个新概念:
这是一个巨大的好处,因为一些用户已经具有异步/等待的经验,并且因为它使得在一个项目中使用多种语言更容易(例如 Python 和 ECMAScript 7)。
(强调我的)
因此,关键字名称确实受到 C#(和其他语言)的启发,至于“为什么”,也在最后一段中解释了。