Re[5]: Можно ли избавиться от async|await?
От: SkyDance Земля  
Дата: 14.12.25 18:03
Оценка: +1
N>Допустим у тебя есть функция prime/1(возвращает Ns простое число). Работает слишком долго и блокируют. В случае C# берем код как есть, ставим async, переименовываем в GetPrimeAsync. Если есть желание, но в современном мире multicore уже не обязательно, разбрасываем "await Task.Yield()".

И в чем смысл такого мероприятия? Просто "поставить async" не выйдет — нужно где-то "await". Иными словами, всю программу переписать.

N>В Эрланге надo полностью разбить на процессы.


Для такой простой мелочи разбивать ничего не надо, есть готовая функция в OTP. Но можно написать и вручную, причем это будет выглядеть очень просто, красиво и элегантно. Оригинальная функция ровно так же не будет меняться. Только в месте вызова вместо "call_fun" будет "spawn(fun call_fun)". Все, писанины куда меньше, чем в C#.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.