и дальше посто не идёт?
let mut load: Vec<u8> = Vec::new();
for srv in stats
.lock()
.await
.keys::<&str, Vec<String>>("*")
.await? {
let d = stats.lock().await.get::<String, u8>(srv).await?;
load.push(d);
}
а если я его переписываю вот так, то он не ловит затупков и работает хорошо
let mut load: Vec<u8> = Vec::new();
let servers = stats
.lock()
.await
.keys::<&str, Vec<String>>("*")
.await?;
for srv in servers {
let d = stats.lock().await.get::<String, u8>(srv).await?;
load.push(d);
}
Почему ловится затупок тебе обьяснили. А вот что с этим делать - написать let load - stats .lock() .await .values::<&str, Vec<String>>("*") .await?; Если предполагать что оно имеет апи похожее на мапу. Ну или по крайней мере заметить 2 stats.lock() на 1. Я просто не вижу смысла доставать ключи и сразу их использовать
Обсуждают сегодня