Когда ThreadPoolExecutor уместен?

ThreadPoolExecutor уместен, когда нужно эффективно управлять пулом потоков для выполнения большого количества задач параллельно, но при этом ограничить количество одновременно работающих потоков.

Короткий ответ

Что ответить на собеседовании

ThreadPoolExecutor уместен, когда нужно эффективно управлять пулом потоков для выполнения большого количества задач параллельно, но при этом ограничить количество одновременно работающих потоков.

Подробный разбор

Ответ с пояснениями

ThreadPoolExecutor уместен, когда нужно эффективно управлять пулом потоков для выполнения большого количества задач параллельно, но при этом ограничить количество одновременно работающих потоков.

Примеры использования:

  • Обработка множества коротких задач, например, запросов к API или обработка файлов.
  • Выполнение фоновых задач в приложении без создания нового потока на каждую задачу.
  • Сценарии, где важно контролировать нагрузку на систему и избегать создания слишком большого количества потоков.

Пример на Python:

from concurrent.futures import ThreadPoolExecutor
import time

def task(n):
    time.sleep(1)
    return f"Task {n} done"

with ThreadPoolExecutor(max_workers=5) as executor:
    results = executor.map(task, range(10))

for result in results:
    print(result)

Здесь создаётся пул из 5 потоков, которые последовательно выполняют 10 задач, что позволяет эффективно использовать ресурсы.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку