Size: a a a

2020 December 06

E

Eugene in Rust Async
внутри spawn я вызываю tx.send(Ok(reply)).await
источник

AI

Alex Ilizarov in Rust Async
Если нужно в текущем контексте иметь результат то только await, можно сразу на пачку
источник

AI

Alex Ilizarov in Rust Async
Eugene
внутри spawn я вызываю tx.send(Ok(reply)).await
"внутри spawn" значит что задача может выполняться даже не в текущем потоке. А значит поставив несколько задач в очередь они решатся в относительно рандомном порядке
источник

E

Eugene in Rust Async
tx.send(Ok(reply)).await  из spawn убрать?
источник

AI

Alex Ilizarov in Rust Async
Может тебе нужен условный join_all?
источник

AI

Alex Ilizarov in Rust Async
А хотя это не по порядку
источник

E

Eugene in Rust Async
Alex Ilizarov
Может тебе нужен условный join_all?
мне нужно, чтобы за итерацию цикла завершился tx.send(Ok(reply)).await
источник

AI

Alex Ilizarov in Rust Async
Eugene
tx.send(Ok(reply)).await  из spawn убрать?
Spawn выкидывает задачу на обработку в том числе и в соседние треды, так ты не получишь гарантий очередности
источник

E

Eugene in Rust Async
и чтобы за следующую итерацию запустился новый tx.send(Ok(reply)).await
источник

AI

Alex Ilizarov in Rust Async
Eugene
мне нужно, чтобы за итерацию цикла завершился tx.send(Ok(reply)).await
Тогда убери спавн и делай await в цикле
источник

E

Eugene in Rust Async
Alex Ilizarov
Тогда убери спавн и делай await в цикле
внутри цикла вызывать tx.send(Ok(reply)).await без spawn  ?
источник

AI

Alex Ilizarov in Rust Async
Eugene
внутри цикла вызывать tx.send(Ok(reply)).await без spawn  ?
Да. Ты же понимаешь для чего нужен spawn?
источник

E

Eugene in Rust Async
Alex Ilizarov
Да. Ты же понимаешь для чего нужен spawn?
в отдельном потоке запускать?
источник

E

Eugene in Rust Async
или в отдельной корутине?
источник

AI

Alex Ilizarov in Rust Async
Eugene
в отдельном потоке запускать?
Поставить задачу в общую очередь исполнения
источник

AI

Alex Ilizarov in Rust Async
В текущем контексте без каких нибудь каналов ты от нее уже ничего не получишь если заспавнишь
источник

AI

Alex Ilizarov in Rust Async
Eugene
или в отдельной корутине?
Корутине скорее, хотя хз как это название к токио катит
источник

E

Eugene in Rust Async
я прямо внутри цикла tx.send(Ok(reply)).await вызывал, но на одной из итераций почему-то останавливалось
источник

AI

Alex Ilizarov in Rust Async
Просто они сразу в нескольких потоках исполняются в дефолтном шедулере токио
источник

AI

Alex Ilizarov in Rust Async
Eugene
я прямо внутри цикла tx.send(Ok(reply)).await вызывал, но на одной из итераций почему-то останавливалось
Ну значит дебажь дальше )
источник