TGViewer
Лаборатория Математики и Программирования Сергея Бобровского Лаборатория Математики и Программирования Сергея Бобровского @lambda_brain · 1.41K subscribers
Post #1185 1.21K
... по сути async -- это просто ухудшенная версия зелёных тредов
(бедная java от них отказалась ещё в версии 1.2 :) и так и осталась на уровне C# до явления в нём async/await и Task)
-- только с плохой интеграцией в язык программирования и слабой эргономикой использования.

Однако в большинстве нормальных языков green threads поддерживаются в той или иной форме: Erlang, Go, Haskell, Julia, OCaml, PHP :) , для Python конечно есть расширения, и т.д.

А вот в Rust их нету (но есть async/await и Future), в основном потому, что у Rust нет рантайма, и для встроенной в язык асинхронщины требуется полностью другая механика компиляции + подходящий рантайм, например Tokio (однако в результате легко получить несовместимый в другими рантаймами код :).

Зелёные потоки в основном подразумевают, что компилятор будет вставлять точки выхода везде -- чтобы можно было приостановить выполнение любого потока в любой момент.

=

Короче говоря, в мэйнстриме понимание асинхронщины сводится примерно к такому: "просто сбрось это в тред и забудь о нём". Это самое наихудшее использование потоков, которое только можно себе представить :)

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

Рассказывал подробнее про "concurrency или параллелизм?".

P.S. Вообще, "однопоточный" Rust был бы существенно дружелюбнее и проще. Не исключено, что когда-нибудь это и случится )
  • 👍 36
  • ✍ 18
  • ❤ 7
  • 🤓 1
More from @lambda_brain
  1. Oct 12, 2026Один из ментатов попросился на работе вот на эту конфу => AI Native Conf 20 окт типа оплат…
  2. Oct 12, 2026. Облако драгоценностей за неделю. Вроде бы академические темки "кабанчика" (по highload у…
  3. Oct 11, 2026Современные разработчики практически больше не имеют возможности получить следующий профес…
  4. Oct 11, 2026Я такой: - вот эта фича позволит реализовывать популярный класс твоих задачек в 2,7 раза б…
  5. Oct 10, 2026Если бы вы направили всю энергию, которую тратите на беспокойство о потере работы из-за ис…
  6. Oct 10, 2026Продолжаю работу с ментатами 🤓 Буквально в сентябре потратил 2 недели впустую. Работал не…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →