had*_*adi 4 c# python asynchronous python-3.5
asyncawaitpython 3.5中的/ (语法和关键字)与C#中的async/ 非常相似await。
C#示例:
async void asyncTask(){
await asyncMethod()
}
Run Code Online (Sandbox Code Playgroud)
Python示例:
async def asyncTask():
await async_method()
Run Code Online (Sandbox Code Playgroud)
问题:python 3.5中的async / await是否受到C#中async / await的启发?如果是,为什么?
在PEP 492(添加await和async关键字的建议)中,提到了C#使用它们(其他除外):
为什么要使用“异步”和“等待”关键字
异步/等待不是编程语言中的新概念:
- C#从很早以前就拥有它[5];
- 建议在ECMAScript 7 [2]中添加异步/等待;另见Traceur项目[9];
- Facebook的Hack / HHVM [6];
- Google的Dart语言[7];
- 斯卡拉[8];
- 建议将异步/等待添加到C ++ [10];
- 和许多其他较不流行的语言。
这是一个巨大的好处,因为有些用户已经具有异步/等待的经验,并且因为它使在一个项目中使用多种语言变得更加容易(例如,带有ECMAScript 7的Python)。
(强调我的)
因此,关键字名称的确受到了C#(和其他语言)的启发,并且在最后一段中也解释了“为什么”。