Size: a a a

2021 March 14

МП

Мимо Проходящий... in rust_offtopic
Αλεχ Zhukovsky
так асинк авейт это то же что горутины тока он явно протекает. И это скорее хорошо, потому что ты видишь где асинк а где нет.

Впрочем, насколько я пробовал в го тоже протекает
в го любая инструкция асинхронна по факту в рантайме и синхронна для программиста, не надо думать где поставить эвейт и какую функцию надо делать асинк. плюс там нет таких вещей как лок контеншон (лок конвой) из-за исчерпания тред пула. Не надо прсматривать весь сторонний код в поисках блокирующей инструкции. Это большая тема вообще, очень много про это написано. Ну и плюс —race нереально спасает в го
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Мимо Проходящий
в го любая инструкция асинхронна по факту в рантайме и синхронна для программиста, не надо думать где поставить эвейт и какую функцию надо делать асинк. плюс там нет таких вещей как лок контеншон (лок конвой) из-за исчерпания тред пула. Не надо прсматривать весь сторонний код в поисках блокирующей инструкции. Это большая тема вообще, очень много про это написано. Ну и плюс —race нереально спасает в го
ну так это минус.

Посмотри, в сишке любоая указатель нуллябельный для программиста и не надо думать где вешать Option. То же самое же
источник

b

badtrousers in rust_offtopic
Αλεχ Zhukovsky
стм вроде неплох, я немного ковырял
где?
источник

b

badtrousers in rust_offtopic
где ковырял
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
разделять где синк а где асинка на типах - это тупо вопрос семантики
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
в пределе можно прийти к тому что идет PyObject через PyObject и вообще ничгео нигде описывать не надо - всё работает само
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
для маленьких приложений наверное это упрощение и ок, для +- средне-больших наверное уже не ок
источник

p

polunin.ai in rust_offtopic
Мимо Проходящий
в го любая инструкция асинхронна по факту в рантайме и синхронна для программиста, не надо думать где поставить эвейт и какую функцию надо делать асинк. плюс там нет таких вещей как лок контеншон (лок конвой) из-за исчерпания тред пула. Не надо прсматривать весь сторонний код в поисках блокирующей инструкции. Это большая тема вообще, очень много про это написано. Ну и плюс —race нереально спасает в го
Всмысле а если кто-то в стороннем коде на го сделает блокирующую операцию? Ты же никогда ее не найдешь, потому что не видно где блокирующая а где нет операция
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Неплохая выдержка от разрабов сишарпа. Даже ретроспективно они считают что "имплисит асинк" это скорее плохо чем хорошо. По своему опыту склонен с ними согласиться
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
polunin.ai
Всмысле а если кто-то в стороннем коде на го сделает блокирующую операцию? Ты же никогда ее не найдешь, потому что не видно где блокирующая а где нет операция
ты и в асинк авейт можешь факторил начать считать, это не аргумент.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
Смысл в том что у тебя *любой* код в го неявно в Async m
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
а любые неявные констрейнты как ты знаешь не пишутся
источник

p

polunin.ai in rust_offtopic
Αλεχ Zhukovsky
ты и в асинк авейт можешь факторил начать считать, это не аргумент.
При чем тут это
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
ну типа того что функа может вернуть боттом. Обычно это подразумевается
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
polunin.ai
При чем тут это
то что в го у тебя всё в Async m и тебе не нужен асинк-авейт и в типах писать что это асинк - подразумевается и так
источник

p

polunin.ai in rust_offtopic
Αλεχ Zhukovsky
Смысл в том что у тебя *любой* код в го неявно в Async m
А как гомпилятор понимает где блокирующая фугка а где нет, чёт я не понимаю
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
polunin.ai
А как гомпилятор понимает где блокирующая фугка а где нет, чёт я не понимаю
никак не понимает. Просто выполняет построчно пока не встретит spawn
источник

p

polunin.ai in rust_offtopic
Αλεχ Zhukovsky
никак не понимает. Просто выполняет построчно пока не встретит spawn
То есть любой вызов функции происходит в spawn()?
источник

p

polunin.ai in rust_offtopic
Лол
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
как токио рантайм понимает что щас будет функция факториала которая блочит тред?
источник