17得票1回答
std::sync::Mutex与tokio::sync::Mutex有什么区别?

一个“async”互斥锁与一个“普通”的互斥锁有何不同?我认为这就是tokio的Mutex和普通的std lib Mutex之间的区别。但是,从概念上讲,我不明白互斥锁怎么可能是“async”的。难道不是只有一个东西可以同时使用它吗?

15得票2回答
futures::select!和tokio::select有什么区别?

我正在使用Tokio,希望能从两个不同的mpsc队列中接收请求。看起来select!是正确的方法,但我不确定futures::select!和tokio::select!之间有什么区别。在什么情况下应该使用其中一个而不是另一个?

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...

11得票1回答
reqwest::Error { kind: Decode, source: Error("expected value", line: 1, column: 1) }' reqwest::Error { 类型: 解码, 来源: 错误("期望值", 行: 1, 列: 1) }'

我在创建POST请求时遇到了以下错误。我是RUST的新手。 我甚至尝试使用HashMap<String, String>而不是serde_json::Value,但仍然出现相同的问题。如果您能告诉我我的标头是否有误或如何追踪它是否实际上是网络reqwest问题,那会很好。 这是...

15得票1回答
如何使用Tokio远程关闭正在运行的任务

我有一个UDP套接字在接收数据。 pub async fn start() -> Result<(), std::io::Error> { loop { let mut data = vec![0; 1024]; socket.r...

22得票2回答
如何在另一个Tokio运行时内创建Tokio运行时,而不出现“无法从运行时内部启动运行时”的错误?

我正在使用rust_bert来进行文本摘要。我需要使用rust_bert::pipelines::summarization::SummarizationModel::new设置模型,该模型从互联网获取。它使用tokio异步执行此操作,而我遇到的问题(我认为)是我正在另一个Tokio运行时中运...

7得票1回答
如何将超文本响应主体写入文件?

我正在尝试使用tokio编写一个测试程序,从网站抓取文件并将流式响应写入文件。Hyper网站提供的示例使用while循环和.data()方法来处理响应主体,但我想使用.map()和其他几种方式来操作流。 我认为下一个合理的尝试是使用TryStreamExt中的.into_async_read(...

25得票3回答
什么情况下应该使用 tokio::join!() 而不是 tokio::spawn()?

假设我想使用Tokio同时下载两个网页... 我可以使用tokio::spawn()实现:async fn v1() { let t1 = tokio::spawn(reqwest::get("https://example.com")); let t2 =...

8得票1回答
使用tokio_timer重复执行Rust任务

我正在使用Tokio框架在Rust中创建一个重复任务。下面的代码基于对tokio-timer crate添加此功能的已完成的更改请求。 尝试编译时,我收到以下错误消息: error[E0281]: type mismatch: the type `fn() {my_cron_func}` ...

7得票3回答
如何测试绑定到tokio TcpStream的未来?

我有一个将TCP流用LinesCodec封装在Framed中的未来计划。 当我试图在测试中进行封装时,大约20%的时间会发生未来阻塞,但由于没有任何东西在监听我要连接的套接字,我希望始终获取错误: thread 'tokio-runtime-worker-0' panicked at 'e...