Встречается на собеседованиях • сегодня

Что такое мультитрединг

Мультитрединг (многопоточность) — это выполнение нескольких потоков в рамках одного процесса, разделяющих общие ресурсы (память, файлы). В Python используется модуль threading.

Особенности в Python:

  • Из-за GIL (Global Interpreter Lock) только один поток выполняет байт-код Python одновременно, что ограничивает параллелизм для CPU-задач.
  • Полезен для I/O-bound задач (сетевые запросы, чтение файлов).

Пример:

python
import threading

def task(name):
    print(f"Thread {name} is running")

threads = []
for i in range(3):
    t = threading.Thread(target=task, args=(i,))
    threads.append(t)
    t.start()

for t in threads:
    t.join()

Альтернативы:

  • multiprocessing для CPU-bound задач (нет GIL).
  • Асинхронность (asyncio) для I/O-bound задач с одним потоком.

Проблемы:

  • Гонки данных (используйте Lock).
  • Deadlocks.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы