我希望能够在后台启动未来运行,而不是立即在父函数范围内等待它。
类似于动态的东西join_all
,我可以在循环中将新期货添加到集合中,然后将集合传递给另一个函数,该函数可以等待整个集合(已经在运行)。
我希望能够做这样的事情:
join_all(vec![
log_arg(&c),
log_arg(&c)
]).await;
但问题是:
.await
开始执行未来,但也在当前函数处等待它。- 如何在不等待的情况下开始执行?
&c
不是'static
- 似乎是所有 Tokio API 的要求,即“开始未来执行而不等待当前 fn 范围内的结果”,例如
spawn_local
- 如果所有期货都在一个线程上,那就可以了。
- 似乎是所有 Tokio API 的要求,即“开始未来执行而不等待当前 fn 范围内的结果”,例如
例子: