Как реализуется многопоточность в Python
Python
Middle
Без компании
Как реализуется многопоточность в Python
Ответы
В Python многопоточность реализуется через модуль `threading`. Однако из-за GIL (Global Interpreter Lock) потоки выполняются не параллельно, а по очереди, что делает их полезными в основном для I/O-bound задач.
Пример:
```
import threading
def worker(num):
print(f"Поток {num} начал работу")
# Имитация I/O операции
import time
time.sleep(1)
print(f"Поток {num} завершил работу")
threads = []
for i in range(3):
t = threading.Thread(target=worker, args=(i,))
threads.append(t)
t.start()
for t in threads:
t.join()
```
Для CPU-bound задач лучше использовать `multiprocessing`, так как он создает отдельные процессы, обходя GIL.