Назад к вопросам
Junior — Middle
81
Какая роль у горутин в управлении асинхронностью и параллельностью в Go?
Ответ от нейросети
sobes.tech AI
Горутины в Go — это легковесные потоки, которые позволяют эффективно управлять асинхронностью и параллельностью. Они запускаются с помощью ключевого слова go и работают в рамках одного процесса, что значительно экономит ресурсы по сравнению с системными потоками.
Горутины позволяют писать асинхронный код, который выглядит как последовательный, упрощая разработку. Планировщик Go автоматически распределяет горутины по доступным ядрам процессора, обеспечивая параллельное выполнение.
Пример запуска горутины:
package main
import (
"fmt"
"time"
)
func sayHello() {
fmt.Println("Hello from goroutine")
}
func main() {
go sayHello() // запуск горутины
time.Sleep(time.Second) // ждем, чтобы горутина успела выполниться
}
Таким образом, горутины — ключевой инструмент для конкурентного программирования в Go, позволяющий создавать масштабируемые и отзывчивые приложения.