3

在处理 Tokio 和期货时,传递给 Tokio 运行时的期货'static大部分时间都必须有生命周期。我理解这是因为未来可能会转移到另一个线程,在那里它可能会比它定义的地方更长寿。

有一种方法Runtime::block_on_all可以保证调用的未来将在调用结束时终止,它甚至返回运行这个未来的结果。

在那种情况下,我不明白(除了 Tokio 代码的简单性)为什么未来必须是'static.

任何人都可以对此有所了解吗?

4

1 回答 1

3

再看一点,似乎我是对的,他们对此有疑问:#431 Drop 'staticbound onRuntime::block_on[_all]

于 2018-08-31T07:07:54.680 回答