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

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

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

16 вопросов 1634 компании 353 технологии

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

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

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

Каталог

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

Найдено: 16
Теория

Как спроектировать асинхронный семафор (asyncio.Semaphore) для жёсткого ограничения RPS к внешнему API?

Semaphore ограничивает число одновременных запросов, а не RPS. Для жёсткого ограничения скорости нужен отдельный временной лимитер, который разрешает старт только в допустимый момент.

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

Что такое `lock`, как сделать инкремент атомарным, почему `lock` нельзя сочетать с `await`, чем `SemaphoreSlim` отличается от `Semaphore` и что будет при использовании value type как объекта синхронизации?

lock обеспечивает взаимное исключение, для простого счётчика подходит Interlocked.Increment. Await внутри lock запрещён; для асинхронного ожидания обычно используют SemaphoreSlim.WaitAsync.

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

Что такое многопоточность, какие задачи она решает и какие примитивы синхронизации вы знаете? Чем SemaphoreSlim отличается от Semaphore и что такое Mutex?

Многопоточность позволяет нескольким потокам выполнять работу конкурентно, а на нескольких ядрах — параллельно. Общие изменяемые данные требуют синхронизации и продуманного владения.

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

Каким образом можно интегрировать механизм Semaphore в существующую программу для управления доступом к ресурсам?

Semaphore (семафор) используется для ограничения количества потоков, которые могут одновременно получить доступ к определённому ресурсу.

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

В каких ситуациях целесообразно применять механизм Semaphore для синхронизации потоков?

Механизм Semaphore (семафор) используется для ограничения количества потоков, одновременно получающих доступ к определённому ресурсу или критической секции.

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

Приходилось ли использовать паттерны Fan-In и Semaphore в работе?

Паттерн Fan-In в Go часто используется для объединения нескольких каналов в один, что позволяет эффективно собирать результаты от нескольких горутин. Это удобно, когда нужно агрегировать данные из разных источников.

Читать ответ