Size: a a a

2021 January 12

f

folex in Rust Async
Да, до меня что-то долго доходило что async блок это еще одно "замыкание"
источник

D

Denis in Rust Async
лучше так не говорить) ибо существуют и именно что "async замыкания"
источник

f

folex in Rust Async
замыкания в том смысле что создается еще одна структура данных, и часть среды попадает в поля этой структуры
источник

f

folex in Rust Async
а так да, разные вещи :) Но как лучше назвать – не знаю
источник

D

Denis in Rust Async
ну, для объяснения я тоже не знаю как лучше назвать
источник

D

Denis in Rust Async
"async block" ничего не объясняет ))
источник
2021 January 13

f

folex in Rust Async
А есть какие-нибудь тулзы для анализа программы на предмет дедлоков? Может property/fuzz-бейзед какие-то подходы есть?

А то я тут написал код, и не до конца понимаю, возможен ли дедлок.
источник

MB

Mikail Bagishov in Rust Async
Denis
ну, для объяснения я тоже не знаю как лучше назвать
Футура?
источник

MB

Mikail Bagishov in Rust Async
folex
А есть какие-нибудь тулзы для анализа программы на предмет дедлоков? Может property/fuzz-бейзед какие-то подходы есть?

А то я тут написал код, и не до конца понимаю, возможен ли дедлок.
loom чем-то близким занимается
источник

f

folex in Rust Async
Спасибо, посмотрю. Как раз хотел попробовать на tokio перейти из async_std
источник

MB

Mikail Bagishov in Rust Async
А причем тут async_std?
источник

f

folex in Rust Async
Я на async_std, а loom вроде на tokio заточен
источник

D

Denis in Rust Async
Mikail Bagishov
Футура?
Ну там поинт не в футуре, а в захвате окружения
источник

m

magras in Rust Async
Denis
ну, для объяснения я тоже не знаю как лучше назвать
Формально, наверное, подойдет "корутина", но не знаю объяснит ли она больше чем "async block".
источник

MS

Mikola Summer Duck in Rust Async
„стейтмашина“ должно зайти
источник

m

magras in Rust Async
Mikola Summer Duck
„стейтмашина“ должно зайти
Мне все меньше нравится определение корутин через конечные автоматы. С одной стороны это верно, но при этом я не знаю удобного способа написания конечного автомата в общем виде через корутину, поскольку у нее нет входа, только внутреннее состояние.
источник

MS

Mikola Summer Duck in Rust Async
В смысле нет входа.
источник

D

Denis in Rust Async
magras
Формально, наверное, подойдет "корутина", но не знаю объяснит ли она больше чем "async block".
как "корутина" отражает, что асинк блок захватывает окружение?)
источник

D

Denis in Rust Async
Mikola Summer Duck
„стейтмашина“ должно зайти
как „стейтмашина“ отражает, что асинк блок захватывает окружение?)
источник

m

magras in Rust Async
Mikola Summer Duck
В смысле нет входа.
Грубо говоря, в методе poll нет возможности передать пользовательские данные. Да, вход можно организовать, например, через канал, но это механизм, который находится немного сбоку от корутины.
источник