Горутины имеют ряд преимуществ:
- Легковесность: Горутины занимают намного меньше памяти (несколько КБ стека по умолчанию по сравнению с МБ для потоков ОС). Это позволяет создавать десятки и сотни тысяч активных горутин.
- Многопоточный планировщик Go: Планировщик горутин Go эффективно распределяет горутины по потокам ОС. Одна горутина, ожидающая операции ввода-вывода, не блокирует выполнение других горутин на том же потоке ОС.
- Простота создания: Горутины с