Выбор ответа Middle Каналы и select спрашивают часто обновлено

select с несколькими готовыми ветками

Вопрос

В select готовы сразу две ветки. Какая выполнится?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Случайная из готовых, выбор равномерный. Спецификация требует псевдослучайный равномерный выбор среди готовых веток, чтобы не было голодания.

Варианты ответа

  1. Первая по порядку в коде, как в switch
  2. Последняя по порядку, она перекрывает первую
  3. Случайная из готовых, выбор равномерныйправильный ответ
  4. Обе по очереди, сначала верхняя

Разбор

Спецификация требует псевдослучайный равномерный выбор среди готовых веток, чтобы не было голодания. Приоритета порядка нет: если нужен приоритет, делают вложенный select или сначала неблокирующую проверку важного канала. Выполняется ровно одна ветка.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.