По перформансу - для обычных задач сойдёт и по памяти и по скорости. Есть свои нюансы относительно того, как этот перформанс из языка выжать, но в среднем норм.
До крестов дотягивает, конечно далеко не всегда, но это плата за рантайм и ленивость
Это не просто реклама. Это действительно так. Просто в Го реализованы стэкфулл корутины. Это и позволяет ему не иметь явных await’ов.
У каждого подхода есть свои плюсы и минусы. В целом, стэклесс корутины позволяют более зирокостные реализации, именно потому в Расте этот подход и принят за основной. Потому что народ хочет асинки на эмбед-железках, где кучи может не быть вообще. При этом реализации стэкфул корутин в Расте тоже есть. Даже несколько штук уже успели настрогать. Самый популярные наверное may. Но популярности оно не набрало по вышеописанным причинам.
Ладно, моя умненькая педо-шапочка )) Скажи все-таки, та статья из асинк-канала о страданиях с пинами в расте - этот весь кошмар у вас заворачивается в библиотеки и прикладники с ним не сталкиваются? ))
Как правило - да. У нас проект бэка сейчас около 100к строк, с кучей бизнес-логики, всякими хитрыми асинк-штуками и т.п., но ручных реализаций Future/Stream буквально 1-2 штуки на весь проект, и то, лишь потому, что они позволяют сделать более оптимальную реализацию, а так то их можно было бы и развернуть через обычные .await’ы.
Если же ты любишь пописать либы - то там прийдётся чаще сталкиваться.
Ладно, педо-шапка. Живите со своими стеклесс корутинами. Я вас растомразями называть не буду, как царь, но все равно на го понять конкуррентность гораздо проще. И главное - там одна модель. От нее все и пляшут ))