Size: a a a

2021 June 26

MS

Mikola Summer Duck in Rust Async
Оу, не увидел что ссылка на коммент
источник

D

Denis in Rust Async
у меня почему-то с первого раза открылась ссылка на статью, и только со второго раза — на комментарий, хабр такой хабр )
источник

n

n1 in Rust Async
Продублируешь? Там вопрос не мой, но ответ тем не менее интересен)
источник

D

Denis in Rust Async
для обычных юнит-тестов асинхронного токио есть крайне удобный макрос #[tokio::test]. В tokio, в том числе, можно вручную управлять временем, а в крейте tokio-test есть примитивы для мока I/O, например.

для более глубокой проверки можно воспользоваться инструментом loom
источник

D

Denis in Rust Async
там ещё ссылки, если надо, могу тоже продублировать
источник

n

n1 in Rust Async
Ну в общем инструменты уже есть, отлично 👍
источник

BV

Boris Vinogradov in Rust Async
А Токио может не лезть в те вещи которые не его
источник

D

Denis in Rust Async
источник

BV

Boris Vinogradov in Rust Async
Да я понял что вы упоролись и вам и паника не то
источник
2021 June 27

VM

Vladimir Melnikov in Rust Async
Что-тот я туплю по этой статье с самого начала, где про асинхронные ужасы parse_line.
Да, read_exact может быть запаузена.
Но как это, черт побери, может привести к ошибке преобразования в строку далее из-за самой асинхронности, а не из-за инвалидных данных в потоке?
read_exact должно считать строго заданное к-во байтов или вернуть ошибку.
Если та сторона вернула правильный PDU, вот это вот с длинной и правильной последовательностью utf8 заданной длины, то откуда тут возьмется "invalid UTF-8"?
источник

IT

Ilya Titkov in Rust Async
Футура там на read_exact может поставиться на паузу, а селект ее просто дропнет, если соседняя ветка готова отдать данные.
На следующей итерации parse_line вызывается снова и начинает делать read_u32, а там уже вместо длины лежит какой-то символ строки.
источник

VM

Vladimir Melnikov in Rust Async
ааа, семен семеныч... спасибо!
источник
2021 June 28

n

n1 in Rust Async
Read_u32 считывает данные? Я думал там количество доступных данных
источник

IT

Ilya Titkov in Rust Async
Ну да, читает 4 байта и интерпретирует их как u32
источник

n

n1 in Rust Async
Блин, а я из-за этого срач развёлj
источник
2021 July 04

D

Denis in Rust Async
где-то ссылку на чат запостили? )
источник
2021 July 05

Krilifon Миронов... in Rust Async
Я с сайта зашёл
источник

D

Denis in Rust Async
с какого? О_о
источник

Krilifon Миронов... in Rust Async
источник

D

Denis in Rust Async
ы, не знал о таком, век живи — век учись!
=)
источник