Конвейер обработки чисел в горутинах с мгновенным выводом
Производитель закрывает sourceChan, обработчик после его исчерпания закрывает resultChan. main печатает каждый результат и накапливает сумму.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Производитель закрывает sourceChan, обработчик после его исчерпания закрывает resultChan. main печатает каждый результат и накапливает сумму.
Читать ответПрограмма напечатает 0: Increment с получателем-значением увеличивает копию Counter, а исходный cnt не меняется.
Читать ответОтберите невозвращённые выдачи с истёкшим сроком, сгруппируйте по клиенту и примените HAVING COUNT(*) > 3. Затем получите клиента и список книг.
Читать ответКорректного предсказуемого результата нет: конкурентные записи в обычную map создают data race и могут аварийно завершить программу.
Читать ответЕсли после третьего append capacity(x) больше 3, оба среза покажут [0 1 2 4]. Точный рост capacity язык не гарантирует.
Читать ответПорядок вывода недетерминирован, а пауза 400 мс не гарантирует завершение HTTP-запросов. Кроме того, ответ http.Get нужно закрывать.
Читать ответПри семантике циклов Go 1.22+ вывод — 10 20. При старой семантике общей переменной v оба указателя после цикла дают 40.
Читать ответЗапустите запрос к каждому серверу и читайте результаты до первого успеха. Буфер размером N не даст оставшимся отправителям зависнуть после возврата.
Читать ответБудут выведены пары a 1, b 2 и c 3, но порядок строк не определён. range по map не гарантирует порядок вставки или сортировку.
Читать ответКанал с одним токеном сериализует изменение числа, а закрытие отдельного канала останавливает работников. При начальном значении 1 итог — 1024.
Читать ответВсе обращения к общей map нужно согласовать одним mutex либо передать владение map одной горутине. Защищать только запись недостаточно.
Читать ответmain блокируется на отправке в небуферизированный канал раньше запуска получателя. В самостоятельной программе возникает deadlock, ничего не печатается.
Читать ответ