Встречается на собеседованиях • сегодня
Какие риски выполнения задач знаешь
-
Deadlock – взаимная блокировка потоков, когда каждый ждёт освобождения ресурса другим.
pythonimport threading lock1 = threading.Lock() lock2 = threading.Lock() def thread1(): with lock1: with lock2: # Может заблокироваться, если thread2 уже взял lock2 pass -
Race Condition – недетерминированное поведение из-за порядка выполнения потоков.
pythoncounter = 0 def increment(): global counter counter += 1 # Не атомарная операция!
-
Memory Leaks – утечки памяти, особенно при циклических ссылках (например, в графах объектов).
pythonclass Node: def __init__(self): self.parent = None # Циклическая ссылка, если parent ссылается обратно -
Безопасность данных – SQL-инъекции, XSS (если Python используется в вебе).
python# Плохо: query = f"SELECT * FROM users WHERE name = '{user_input}'" # Лучше: cursor.execute("SELECT * FROM users WHERE name = %s", (user_input,)) -
Производительность – например, неоптимальные запросы к БД (N+1 проблема), блокирующие вызовы в асинхронном коде.
-
Ошибки окружения – зависимости, версии Python, переменные окружения.
Способы снижения рисков:
- Использование
threading.Lock,asyncio,multiprocessing. - Профилирование (например,
cProfile). - Статический анализ (
mypy,pylint). - Тестирование (юнит-тесты, нагрузочные тесты).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы