7得票3回答
使用Tokio生成非静态future

我有一个异步方法,它应该并行执行一些futures,并且只有在所有futures完成后才返回。然而,它通过引用传递了一些数据,这些数据的生命周期不如'static长(它会在主方法某个时刻被丢弃)。从概念上讲,它类似于这个(Playground): async fn do_sth(with: ...

7得票1回答
什么是启用使用Tokio轮询future所需的最小功能集?

我想轮询一个异步函数: #[tokio::main] async fn main() -> Result<(), Box<dyn std::error::Error>> { some_function().await; } 我目前正在启用所有功能: ...

7得票1回答
调用两个异步接收器的select函数,我会错过某个值吗?

如果一个任务发送到a,而另一个任务(同时)发送到b,那么在使用tokio::select!选择器时,是否会通过取消剩余的未来任务而丢失其中一个值?或者保证在下一个循环迭代中收到该值? use tokio::sync::mpsc::Receiver; async fn foo(mut a: ...

7得票1回答
有没有办法创建一个异步流生成器,它可以产生重复调用函数的结果?

我希望建立一个程序,收集天气更新信息并将其表示为一条流。我想在无限循环中调用get_weather()方法,在结束和开始之间有60秒的延迟。 简化后的代码如下: async fn get_weather() -> Weather { /* ... */ } fn get_weath...

7得票1回答
如何解决“thread 'main' panicked at 'no current reactor'”错误?

我正在尝试连接数据库: extern crate tokio; // 0.2.6, features = ["full"] extern crate tokio_postgres; // 0.5.1 use futures::executor; use tokio_postgres::No...

7得票2回答
如何在Rust中选择future和stream?

我刚刚开始在Rust中尝试使用futures/tokio。我可以只使用futures或只使用streams进行基本操作。我想知道如何在future和stream之间进行选择。 我该如何扩展tokio文档中的玩具问题,以使用tokio_timer::Timer来进行定时的HTTPS请求? e...