Почему Tokio Runtime :: block_on_all требует будущего со статическим временем жизни? - PullRequest
0 голосов
/ 31 августа 2018

При работе с Tokio и фьючерсами фьючерсы, передаваемые в среду исполнения Tokio, должны в большинстве случаев иметь время жизни 'static. Я понимаю, что поскольку будущее может быть перенесено в другой поток, где оно потенциально может пережить место, которое было определено.

Существует метод Runtime::block_on_all, который гарантирует, что вызываемое будущее будет прервано к концу вызова, и даже возвращает результат запуска этого будущего.

В этом случае я не понимаю (за исключением простоты кода Токио), почему будущее должно быть 'static.

Может кто-нибудь пролить свет на это?

1 Ответ

0 голосов
/ 31 августа 2018

Глядя немного дальше, кажется, что я прав, и у них есть проблема по этому поводу: # 431 Drop 'static, привязанный к Runtime::block_on[_all]

...