【发布时间】:2021-07-08 22:41:18
【问题描述】:
我来自 C++ 世界,我正在寻找 Python 中的 std::future、std::promise 等价物。 Python中是否有等效的机制或另一种方法来实现相同的功能? 我知道 asyncio.Future,但我需要它来处理线程而不是 asyncio。
我正在使用我直接从我的主线程调用的第三方库 (PJSUA2),但它在由库创建的工作线程的上下文中以异步回调的形式发送结果。
期待 Python 的未来/承诺支持,我希望像这样编写我的应用程序代码:
future = wrap_foo(...)
if (future.get() != expected_result):
throw Exception(...)
future1 = wrap_foo(...)
future2 = wrap_bar(...)
我计划用 wrap_xxx 函数(其中库函数称为 xxx)包装所有库异步调用,以负责创建未来/承诺对象。
我需要拥有多个未决未来的能力,所以我不能简单地制作同步 wrap_xxx 函数,在结果准备好之前阻塞。
【问题讨论】:
-
C++ 世界是否也因人类极端的无知和否认而遭受危险的气候变化?告诉我们更多关于你来自这个地方的信息:D
-
@木兰。想了解更多关于哥本哈文的信息?
标签: python multithreading promise future