Как я могу восстановить задачу в очереди задач из-за сбоя при использовании ThreadPoolExecutor Python

#python-3.x #multithreading #threadpoolexecutor

#python-3.x #многопоточность #threadpoolexecutor

Вопрос:

Я использую ThreadPoolExecutor из пакета concurrent.futures и хочу выполнять пакетный запрос одновременно.

 from concurrent.futures import ThreadPoolExecutor
from concurrent.futures import as_completed
import requests


BASE_URL = "api/{param_id}"

def get_result(param_id):
    url = BASE_URL.format(param_id=param_id)
    s = requests.get(url)
    return s
    # if task failed here, how can I reput it into task_queue again until it 
    # return expected result successfully

with ThreadPoolExecutor(max_workers=5) as executor:
    obj_list = []
    result_list = []
    for page in range(1, 15):
        obj = executor.submit(get_result, page)
        obj_list.append(obj)

    for future in as_completed(obj_list):
        data = future.result()
        result_list.append(data)

  

ThreadPoolExecutor сам реализовал queue внутри. Мой вопрос в том, как я могу повторно включить задачу get_result в это queue снова, поскольку она не удалась из-за какой-либо проблемы с таймаутом сети или другой неожиданной проблемы.

Большое спасибо.