Когда используются потоки
Python
Middle
Без компании
Когда используются потоки
Ответы
Потоки в Python (модуль `threading`) используются для параллельного выполнения I/O-bound задач, когда программа часто ожидает внешних операций (сеть, диск, пользовательский ввод). Из-за GIL потоки не дают выигрыша в CPU-bound задачах.
Основные случаи использования:
- Обработка множества сетевых запросов
- Чтение/запись файлов параллельно
- Реагирование на UI события без блокировки интерфейса
Пример:
```
import threading
def download(url):
print(f"Downloading {url}...")
# имитация долгой операции
time.sleep(2)
print(f"Finished {url}")
urls = ["url1", "url2", "url3"]
threads = []
for url in urls:
thread = threading.Thread(target=download, args=(url,))
thread.start()
threads.append(thread)
for thread in threads:
thread.join()
```
Важно: для CPU-bound задач лучше использовать `multiprocessing`, а для асинхронного I/O - `asyncio`.