Сопоставление Middle GIL, потоки и процессы обновлено
Задача и подходящий инструмент
Вопрос
Сопоставьте задачу и инструмент, который подходит лучше всего.
Попробуйте сами
Нажмите слева, потом подходящее справа.
Показать ответ и разбор
Коротко
Потоки для синхронного I/O, процессы для CPU-bound кода, asyncio для массы ожидающих соединений. Семафор ограничивает параллелизм, очередь связывает производителей и потребителей.
Правильные пары
Параллельно вызвать 50 синхронных HTTP-API
ThreadPoolExecutorПосчитать тяжёлую математику на чистом Python на 8 ядрах
ProcessPoolExecutorДержать 20 000 открытых соединений чатаasyncio
Ограничить число одновременных обращений к ресурсу
SemaphoreПередавать задачи от производителя потребителям
queue.QueueРазбор
Потоки для синхронного I/O, процессы для CPU-bound кода, asyncio для массы ожидающих соединений. Семафор ограничивает параллелизм, очередь связывает производителей и потребителей.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.