Sobes.tech
Middle
19

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

Companies where asked
FOM GROUP

Answer from AI

sobes.tech AI

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 задач, что позволяет эффективно использовать ресурсы.