Вопросы по Go — часть 7
204 реальных вопросов с собеседований разных специальностей, отсортированы по частоте
Все вопросы открыты бесплатно для всех — без регистрации и оплаты.
1×
Какие методы есть у структуры sync.WaitGroup в языке Go?
concurrency
junior
1×
Что такое канал (channel) в контексте конкурентного программирования?
concurrency
middle
1×
Как долго вы пишете на Go?
language_specific
junior
Так Enigma подсказывает прямо на собеседовании
этот вопрос задавали на реальных интервью 1×
Какие методы есть у структуры sync.WaitGroup в языке Go?
У sync.WaitGroup всего три метода: Add, Done и Wait. Никаких других публичных методов нет. Все они потокобезопасны и работают через атомарные операции внутри структуры. Add(delta int) — увеличивает или уменьшает внутренний счётчик. Обычно вызывается перед запуском горутины. Если передать отрицательное число, счётчик уменьшится — это может привести к панике, если счётчик уйдёт в минус. На практике Add вызывают с…
✓ Три метода: Add, Done, Wait
✓ Done — это Add(-1), не вызывает панику при нулевом счётчике, но уйдёт в минус
🔒 и ещё 3 — в полном ответе
Дочитать ответ и получать такие подсказки во время своего интервью
Вход через Telegram за секунду. 150 кредитов бесплатно, карта не нужна.
Даю согласие на обработку персональных данных
(152-ФЗ) и принимаю условия использования
Вы уже вошли — полные ответы и подсказки ждут в приложении
Скачать Enigma
1×
Расскажите подробнее про то, как устроены интерфейсы в Go «под капотом»?
language_specific
middle
1×
Как устроены слайсы в Go под капотом и что происходит при их работе?
language_specific
middle
1×
Как обрабатывать ошибки в Go?
language_specific
junior
1×
Во что превращается unsafe в Go при компиляции?
language_specific
middle
1×
Сколько существует типов данных в языке Go?
language_specific
junior
1×
Что такое локальность данных и как в Go происходит сборка мусора?
language_specific
middle
1×
Расскажите, как устроен рантайм в Go: как работает планировщик, сборщик мусора и в чем разница между стеком (stack) и кучей (heap)?
language_specific
middle
1×
Как написать программу на языке Go?
language_specific
junior
1×
Почему язык программирования Go так называется и кто придумал это название?
language_specific
junior
1×
Расскажите про управление памятью в задачах (goroutines) в Go.
concurrency
middle
1×
В чем разница между RWMutex и обычным Mutex в Go? Могут ли 10 горутин одновременно прочитать одну переменную под RWMutex или они должны ждать?
concurrency
middle
1×
Что вы знаете о функции init в языке Go?
language_specific
junior
1×
Как дождаться завершения выполнения 10 запущенных горутин перед тем, как продолжить выполнение основной программы?
concurrency
junior
1×
Как дождаться завершения всех запущенных горутин перед тем, как продолжить выполнение программы?
concurrency
junior
1×
В чем разница между defer и WaitGroup в Go и в каких случаях что лучше использовать?
concurrency
middle
1×
Как давно вы работаете с Go? С какой версии начинали и на какой версии сейчас?
language_specific
junior
1×
Как подключить и скомпилировать пакет в Go, если он находится вне модуля main и из функции main не вызывается ни один его метод?
language_specific
middle
1×
Что такое анонимные импорты в Go и зачем они используются?
language_specific
middle
1×
Какие бывают виды и типы каналов в языке программирования Go?
concurrency
middle
1×
В чём отличие горутин от системных потоков (OS threads)?
concurrency
middle
1×
Существует ли в языке Go наследование?
language_specific
junior