Size: a a a

Rust — русскоговорящее сообществo

2020 March 30

p

polunin.ai in Rust — русскоговорящее сообществo
по всей видимости да, токио поллит футуру только пару раз. но тут пример для токио 0.1, а у меня 0.2
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
polunin.ai
по всей видимости да, токио поллит футуру только пару раз. но тут пример для токио 0.1, а у меня 0.2
В этом плане вроде ничего не изменилось в 0.2
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Casual tears
В этом плане вроде ничего не изменилось в 0.2
да, нет функции current()
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
polunin.ai
да, нет функции current()
Я про общую модель исполнения. Сейчас аналог notify() через Waker делается.
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Casual tears
Я про общую модель исполнения. Сейчас аналог notify() через Waker делается.
а есть пример?
источник
2020 March 31

Ct

Casual tears in Rust — русскоговорящее сообществo
polunin.ai
а есть пример?
https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=6c6f23e721ce52f7782c7a36c08c4808

Но скорее всего это не то что тебе нужно
источник

p

polunin.ai in Rust — русскоговорящее сообществo
ну футура поллится дольше, но все равно она не работает пока внутри не спаникует
UPD: не футура, AsyncRead
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
polunin.ai
ну футура поллится дольше, но все равно она не работает пока внутри не спаникует
UPD: не футура, AsyncRead
Смотри. Главное правило написания своих футур - возвращать Pending только тогда, когда его underlying футура вернула.
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Если ему следовать то никаких проблем вида "ой моя таска повисла и больше не работает" не должно возникать.
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Casual tears
Смотри. Главное правило написания своих футур - возвращать Pending только тогда, когда его underlying футура вернула.
мне нужно читать данные из футуры, и помещать их в буффер пока не прочитаю определенное количество байт. Что мне возвращать все это время кроме как не Pending, пока я читаю данные из футуры?
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
polunin.ai
мне нужно читать данные из футуры, и помещать их в буффер пока не прочитаю определенное количество байт. Что мне возвращать все это время кроме как не Pending, пока я читаю данные из футуры?
Пока ты читаешь данные из футуры ты из poll ничего не возвращаешь вроде
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Casual tears
Пока ты читаешь данные из футуры ты из poll ничего не возвращаешь вроде
я говорил, у меня AsyncRead
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Если футура заблочилась (вернула Pending) только тогда и возвращай Pending
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
polunin.ai
я говорил, у меня AsyncRead
Что это меняет?
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Casual tears
Если футура заблочилась (вернула Pending) только тогда и возвращай Pending
что мне возвращать когда я прочитал данные из футуры, положил их в свой буффер, но не в буффер, который пришел в функцию AsyncRead::poll_read()?
источник

p

polunin.ai in Rust — русскоговорящее сообществo
мне нужно прочитать N байт данных в буффер внутри футуры, и только потом я могу отдавать данные из футуры
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
polunin.ai
что мне возвращать когда я прочитал данные из футуры, положил их в свой буффер, но не в буффер, который пришел в функцию AsyncRead::poll_read()?
ничего не возвращать, читай дальше из футуры, пока читается
источник

p

polunin.ai in Rust — русскоговорящее сообществo
хм, попробую
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Casual tears
ничего не возвращать, читай дальше из футуры, пока читается
да, спасибо, работает
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
у меня есть struct X(u8). Я могу как-то сделать ему AsRef<[u8]> и создать слайс &[u8] на его .0?
источник