Подготовка к интервью

Банк вопросов с собеседований

Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.

77 вопросов 119 компаний 249 технологий

Усильте резюме перед собеседованием

Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.

Анализ резюме
Сбросить

Каталог

Результаты поиска

Найдено: 77
Поведенческий

Как предотвратить deadlock и livelock при использовании блокировок?

deadlock: взаимная блокировка ресурсов livelock: бесконечное изменение состояний без продвижения исключать циклические зависимости между ресурсами задавать единый порядок захвата блокировок (lock ordering)…

Читать ответ
Поведенческий

Как работает диспетчеризация в Swift?

механизм выбора и вызова функций в runtime (во время выполнения) статическая (early) — компилятор заранее определяет прямой вызов динамическая (late) — реализация метода выбирается во время исполнения с учётом типа…

Читать ответ
Поведенческий

Как работают DispatchGroup и DispatchSemaphore в iOS/macOS?

Как работают DispatchGroup и DispatchSemaphore? Concurrency primitives для iOS/macOS в GCD DispatchGroup — средство координации асинхронных задач помогает отследить завершение всех операций, входящих в группу…

Читать ответ
Теория

Как работают Web Workers, каковы их преимущества и ограничения?

Как работают Web Workers, каковы их преимущества и ограничения? Web Workers — браузерный API для асинхронной фоновой обработки Создают отдельные потоки JS, поэтому UI не блокируется Передают данные с помощью сообщений…

Читать ответ
Поведенческий

Как синхронизировать UI-поток в Windows Forms и показать сообщение из фонового потока?

Отображение сообщения из фонового потока в Windows Forms UI-поток в Windows Forms является однопоточным, поэтому другой поток не может напрямую изменять его элементы Для передачи выполнения в UI-поток применяют…

Читать ответ
Поведенческий

Как устроен CountDownLatch и когда он разблокирует потоки?

Как устроен CountDownLatch? синхронизатор из Java concurrency создаётся с начальным счётчиком метод await() приостанавливает поток, пока счётчик не станет равен 0 метод countDown() уменьшает значение счётчика на 1…

Читать ответ
Поведенческий

Как устроен механизм CAS (Compare-And-Swap) внутри Atomic-классов?

Как работает CAS внутри Atomic-классов CAS — это низкоуровневый механизм атомарного обновления значения в памяти Он сопоставляет текущее значение с ожидаемым (compare) При совпадении значение заменяется новым (swap)…

Читать ответ
Поведенческий

Как устроен планировщик горутин в Go и какую роль играют GOMAXPROCS и ядра ОС?

Как устроен планировщик горутин в Go и какую роль играют GOMAXPROCS и ядра ОС В Go используется M:N модель: большое количество горутин распределяется между меньшим числом системных потоков (OS threads). За…

Читать ответ
System Design

Как устроена и работает многопоточность в Java?

Как работает многопоточность в Java? Java обеспечивает параллельное выполнение с помощью потоков (Threads) Поток — отдельный исполняемый поток команд в рамках процесса Для создания потоков применяют классы Thread и…

Читать ответ
Поведенческий

Как устроены wait() и notify() и где их разрешено вызывать?

Как устроены wait() и notify() и где их разрешено вызывать? средства синхронизации в Java, основанные на объектном мониторе wait() — освобождает монитор и переводит поток в режим ожидания notify() — будит один поток,…

Читать ответ
Поведенческий

Как устроены стек и куча в многопоточной среде?

память разделяется между стеком и кучей стек принадлежит конкретному потоку и содержит его локальные переменные и вызовы функций при многопоточном выполнении каждый поток использует собственный независимый стек,…

Читать ответ
Поведенческий

Какие бывают CoroutineScope и Dispatcher и как их использовать?

Виды и применение CoroutineScope и Dispatcher CoroutineScope задаёт область жизни корутины, управляет её запуском и отменой Основные виды CoroutineScope: GlobalScope — глобальная область, не связанная с жизненным…

Читать ответ