Size: a a a

2020 August 26

V

Vetro in Rust Async
Danieλ Sλapman
Чисто в образовательных целях 😅
Ну если cpu-bound то можешь в rayon запихнуть и результаты по каналу назад отправлять
источник

DS

Danieλ Sλapman in Rust Async
Vetro
Ну если cpu-bound то можешь в rayon запихнуть и результаты по каналу назад отправлять
Понял, спасибо
источник

DS

Danieλ Sλapman in Rust Async
rayon на вид похож на то, что я хочу получить
источник

V

Vetro in Rust Async
Danieλ Sλapman
Понял, спасибо
Смотреть в сторону block_in_place и spawn_blocking
источник

A

Apachee in Rust Async
Vetro
На дефолтном тредпуле рантайма и выполнится
а как futures получит тредпул рантайма? я для выполнения в тредпуле токио пушил в FuturesUnordered async { tokio::spawn(...).await }
источник

A

Apachee in Rust Async
если мне не изменяет память, то без этого мой код выполнялся в одном потоке, выполняя футуры одну за другой
источник

V

Vetro in Rust Async
Apachee
а как futures получит тредпул рантайма? я для выполнения в тредпуле токио пушил в FuturesUnordered async { tokio::spawn(...).await }
Ну я так полагаю что если он использует анордеред фьючи то он делает это уже в асинк функе с контекстом токио рантайма
источник

V

Vetro in Rust Async
Собственно на этом предположении все и держится))
источник
2020 August 27

YM

Yaro M in Rust Async
в доке есть, а в коде крейта нет, wtf?

https://docs.rs/tokio/0.2.22/tokio/io/fn.stream_reader.html
источник

Ct

Casual tears in Rust Async
источник

YM

Yaro M in Rust Async
спс
было tokio = { version = "0.2",
значит он брал не последнюю а какую-то 0.2.13 в которой нет stream_reader
источник

PP

Piu Piu in Rust Async
Yaro M
спс
было tokio = { version = "0.2",
значит он брал не последнюю а какую-то 0.2.13 в которой нет stream_reader
посмотри lock там должна быть зафиксированная версия
источник

ph

pl 🦑 hk in Rust Async
cargo update -p tokio
источник

YM

Yaro M in Rust Async
Piu Piu
посмотри lock там должна быть зафиксированная версия
да так и есть
version = "0.2.13"
источник

YM

Yaro M in Rust Async
pl 🦑 hk
cargo update -p tokio
спасибо
источник

YM

Yaro M in Rust Async
как грамотно сделать обертку реализующую AsyncRead над
Stream<Item = Result<impl Buf, Error>>
чтобы прервать чтение если суммарный размер прочитанного стал >N
?
источник

YM

Yaro M in Rust Async
источник

D

Denis in Rust Async
Yaro M
как грамотно сделать обертку реализующую AsyncRead над
Stream<Item = Result<impl Buf, Error>>
чтобы прервать чтение если суммарный размер прочитанного стал >N
?
источник

D

Denis in Rust Async
Т.е. stream_reader + take
источник

YM

Yaro M in Rust Async
спасибо, take тоже будет полезен
источник