Sobes.tech
Назад к вопросам
Junior — Middle
79

В чем заключается назначение ключевого слова 'default' внутри конструкции select?

Ответ от нейросети

sobes.tech AI

В конструкции select в Go ключевое слово default используется для обработки случая, когда ни один из каналов не готов к операции (чтению или записи). Если ни один из каналов не доступен, блок default выполняется немедленно, что позволяет избежать блокировки горутины.

Пример:

select {
case msg := <-ch1:
    fmt.Println("Получено сообщение из ch1:", msg)
case ch2 <- 42:
    fmt.Println("Отправлено сообщение в ch2")
default:
    fmt.Println("Ни один канал не готов, выполняется default")
}

Таким образом, default позволяет сделать неблокирующий выбор каналов.