Я впервые пытаюсь использовать многопроцессорность со следующим кодом:
def fuzzy_match(blg_matches, op_matches):
update_dicts = []
with concurrent.futures.ProcessPoolExecutor() as executor:
scored_matches = [
executor.submit(run_matching, blg_match, repeat(op_matches))
for blg_match in blg_matches
]
for match in concurrent.futures.as_completed(scored_matches):
update_dicts.append(match)
return update_dicts
Однако он просто зависает и ничего не делает.
Для тестирования я ' Мы удалили функцию run_matching
до:
def run_matching(blg_match, op_matches):
return 2
И она все еще зависает.
Оба blg_matches
и op_matches
являются объектами SQLAlchemy Query.
Любые идеи о том, где я ошибаюсь?