Почему импортированный модуль python перестает работать после начала многопроцессорной обработки? - PullRequest
0 голосов
/ 23 ноября 2011

У меня есть класс, в который я импортирую модуль (назовите его myModule).Среди прочего, я использую этот модуль для объекта, который он предоставляет:

 myObject = myModule.ImportantObject()

Этот объект работал нормально, когда я использовал его в классе, пока я не начал использовать многопроцессорность.В частности, в моем классе есть метод с именем go(), который создает два многопроцессорных процесса (целью которых являются другие методы этого класса), а затем запускает их.Странно то, что после запуска этих процессов все вызовы, относящиеся к myObject, терпят неудачу, и я также обнаружил, что невозможно создать новый myModule.ImportantObject().Эти неудачные вызовы выполняются из целевых методов Процессов и из других методов, которые они сами вызывают.

Последняя интересная часть заключается в том, что myObject продолжает нормально работать из метода go() (где была запущена многопроцессорная обработка), но не где еще.

Есть идеи?

* РЕДАКТИРОВАТЬ: myModule - это музыкальный модуль, пытающийся отправлять MIDI-сообщения через виртуальный порт через CoreAudio.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...