Встречается на 3% собеседований по Python
Зачем нужна многопоточность (multithreading) в Python
Многопоточность в Python позволяет выполнять несколько задач почти одновременно, что особенно полезно для I/O-bound операций (сеть, файлы, ожидание ответа от API). Хотя из-за GIL (Global Interpreter Lock) настоящего параллелизма для CPU-bound задач не добиться, потоки экономят время за счёт переключения между задачами.
Пример (скачивание файлов):
python
import threading
import requests
def download(url):
response = requests.get(url)
print(f"Downloaded {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()Здесь потоки позволяют скачивать файлы параллельно, не блокируя основной поток.
Когда использовать:
- I/O-bound задачи (сеть, БД, файлы)
- GUI-приложения (чтобы интерфейс не "зависал")
- Асинхронные операции, где важно ожидание
Для CPU-bound задач лучше использовать multiprocessing.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы