На чем основана многопоточность (multithreading) в Python

Python Middle Rutube
На чем основана многопоточность (multithreading) в Python
Ответы
В Python многопоточность основана на модуле `threading`, но из-за Global Interpreter Lock (GIL) настоящий параллелизм потоков невозможен. GIL позволяет выполняться только одному потоку за раз, даже на многоядерных процессорах. **Когда полезно:** - I/O-bound задачи (сеть, файлы), где потоки могут ждать и освобождать GIL. - Не подходит для CPU-bound задач (вычисления), тут лучше `multiprocessing`. **Пример:** ``` import threading def task(): print("Поток выполняется") threads = [] for _ in range(5): t = threading.Thread(target=task) threads.append(t) t.start() for t in threads: t.join() ``` **Альтернативы:** - `asyncio` для асинхронного I/O. - `multiprocessing` для CPU-bound задач.