一旦多处理开始,为什么导入的python模块会停止工作?

时间:2011-11-23 18:46:15

标签: python object module multiprocessing

我有一个类,我在其中导入一个模块(称之为myModule)。除此之外,我将此模块用于它提供的对象:

 myObject = myModule.ImportantObject()

每当我在课堂上使用它时,这个对象都能正常工作,直到我开始使用多处理。特别是,我的类有一个名为go()的方法,它创建两个多处理进程(其目标是此类的其他方法),然后启动它们。奇怪的是,一旦这些进程启动,所有与myObject相关的调用都会失败,我进一步发现无法创建新的myModule.ImportantObject()。这些失败的调用是根据进程的目标方法以及它们自己调用的其他方法进行的。

最后一个有趣的部分是myObject继续在go()方法(多处理开始的地方)内正常工作,但没有其他地方。

有什么想法吗?

*编辑:myModule是一个与音乐相关的模块,试图通过CoreAudio通过虚拟端口发送MIDI消息。

0 个答案:

没有答案