В чем разница потоков и процессов

Python Senior Без компании
В чем разница потоков и процессов
Ответы
Потоки (threads) и процессы (processes) — это способы выполнения кода параллельно, но с ключевыми различиями: - **Память**: Потоки разделяют память процесса, а процессы имеют изолированную память. - **Создание**: Потоки легче (меньше накладных расходов), процессы тяжелее (отдельное окружение). - **GIL в Python**: Глобальная блокировка интерпретатора (GIL) ограничивает потоки в CPython, делая их неэффективными для CPU-задач. Процессы обходят GIL. Пример с потоками: ``` import threading def task(): print("Поток работает") thread = threading.Thread(target=task) thread.start() ``` Пример с процессами: ``` from multiprocessing import Process def task(): print("Процесс работает") process = Process(target=task) process.start() ``` Выбор зависит от задачи: потоки для I/O-bound, процессы для CPU-bound.