Встречается на собеседованиях • сегодня
Что знаешь про потоки в Python
В Python потоки (threads) используются для выполнения задач параллельно в рамках одного процесса. Они разделяют общее пространство памяти, что упрощает обмен данными, но требует синхронизации из-за проблем с GIL (Global Interpreter Lock).
Особенности:
- GIL ограничивает выполнение только одного потока за раз (в CPU-bound задачах).
- Потоки эффективны для I/O-bound задач (сеть, файлы), где есть ожидание.
- Реализованы через модуль
threading.
Пример:
python
import threading
def task():
print("Поток выполняется")
thread = threading.Thread(target=task)
thread.start()
thread.join() # Ожидание завершенияСинхронизация:
Используйте Lock, RLock, Semaphore для избежания race conditions:
python
lock = threading.Lock()
with lock:
# Критическая секция
shared_data += 1Альтернативы:
- Для CPU-bound задач —
multiprocessing. - Для асинхронности —
asyncio.

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