У меня нет проблем с использованием concurrent.futures, если все мои процессы запускаются из разных функций. Но если я хочу вызывать одну и ту же функцию с разными параметрами, я не могу получить синтаксис правильно. Это то, что я до сих пор, но он не работает:Python concurrent.futures, вызывающий одну и ту же функцию дважды
tasks = ((serial_port_local, serial_options_local, serial_port_remote, serial_options_remote, "local"),
(serial_port_remote, serial_options_remote, serial_port_local, serial_options_local, "remote"))
for task in zip(tasks, executor.map(serial_cross_over, tasks)):
print (task)
Это ошибка, но я не обращал внимания на это:
TypeError: serial_cross_over() missing 4 required positional arguments: 'receive_serial_options', 'send_serial_port', 'send_serial_options', and 'source'
На самом деле я не обращал внимания, почему его сложный вообще. Не следует делать только:
executor.submit(some_function(parameter1))
executor.submit(some_function(parameter2))
Но это не работает. Программа зависает во второй submit. Зачем?