Встречается на собеседованиях • сегодня

Что такое корпоративная многозадачность

Корпоративная многозадачность (или конкурентность) в Python — это подход к выполнению нескольких задач одновременно в рамках одного процесса, часто используемый в корпоративных приложениях. В отличие от параллелизма (true parallelism), в Python из-за GIL (Global Interpreter Lock) потоки выполняются поочередно, но переключаются быстро, создавая иллюзию параллельности.

Для IO-задач (сетевые запросы, работа с БД) эффективны асинхронные подходы (asyncio) или пулы потоков (ThreadPoolExecutor). Для CPU-задач — процессы (multiprocessing).

Пример с ThreadPoolExecutor:

python
from concurrent.futures import ThreadPoolExecutor
import requests

def fetch(url):
    return requests.get(url).status_code

urls = ["https://python.org", "https://google.com"]
with ThreadPoolExecutor(max_workers=2) as executor:
    results = list(executor.map(fetch, urls))
print(results)  # [200, 200]

Ключевые инструменты:

  • threading — для IO-bound задач с GIL.
  • multiprocessing — для CPU-bound задач (обходит GIL).
  • asyncio — для асинхронного IO с корутинами.

Важно: избегать race conditions (использовать Lock, Queue).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы