试图理解为什么创建和操纵期货是一种不好的做法

时间:2019-01-21 00:30:17

标签: python async-await

我正在尝试通过阅读PyMotW指南来了解Python的未来。

昨天我问了question,并在评论中指出:

  

该指南的一个更严重的问题是创建和操作   在现代异步编程中,原始期货被认为是不良样式。

我尝试搜索更多信息,但发现的最接近的是Python guide about Future

  

经验法则是从不以面向用户的方式公开Future对象   API,建议的创建Future对象的方法是调用   loop.create_future()。这样,备用事件循环实现   可以注入自己对Future对象的优化实现。

问题:

为什么创建和操纵期货被视为不良做法?原因记录在某处吗?

1 个答案:

答案 0 :(得分:1)

感谢@ user4815162342,它提供了Yury Selivanov到async / await presentation的链接。

我设法伸出手来问他。这是他的话。

  

出现警告是因为Future是一个低级API。你应该   使用它围绕现有的基于回调的对象构建异步/等待外观   码。但是,如果您是从头开始编写异步/等待代码,则有   异步中更高级的内置异步/等待API   使用(而且更不容易出错)。