Я хотел бы выполнить функцию несколько раз в разных потоках с разными входами функции.
Проблема в том, что моей функции для каждого запуска требуется больше, чем один вход, поэтому я пытаюсь сделать следующее: (функция здесь значительно упрощена)
import time
from joblib import Parallel, delayed
# A function that can be called to do work:
def work(arg1,arg2):
return (arg1, arg2)
# List of arguments to pass to work():
arg_instances = [(1, 1), (1, 2), (1, 3), (1, 4)]
# Anything returned by work() can be stored:
results = Parallel(n_jobs=4, verbose=1, backend="threading")(map(delayed(work), arg_instances))
print(results)
К сожалениюэто не работает.
work () отсутствует 1 обязательный позиционный аргумент: 'arg2'
Это как-то связано с функцией карты, но я незнаю, как решить это.Любая помощь будет высоко ценится.