Итак, у меня есть особая ситуация, когда я многопоточен с набором функций, некоторые из которых вызывают дальнейшие потоки.В одном из таких случаев первый поток в блоке из трех не выполняет свою целевую функцию и вместо этого выдает следующую ошибку:
NameError: name '<FUNCTION_NAME>' is not defined
Это код:
threadA = self.pool.apply_async(functionA)
threadB = self.pool.apply_async(functionB)
threadC = self.pool.apply_async(functionC)
valueA = threadA.get()
valueB = threadB.get()
valueC = threadC.get()
Исоответствующая функция определена выше.
Если я переключу порядок этих назначений потоков, первый вызовет NameError.Например.Если threadB был назначен первым, ошибка будет выглядеть следующим образом:
NameError: name 'functionB' is not defined
В это время происходит множество других потоков, поэтому я не уверен, что это проблема с ресурсами.
Редактировать: Я использую multiprocessing.pool.ThreadPool
, а не процессы.
Любая помощь будет отличной,
Приветствия :)