Well, I tried executing something that should have no output: import multiprocessing
foo = [] p = multiprocessing.Process(target=foo.append, args=(3,)) p.start() p.join() ...alas, this still caused a maya crash. Also, I tried using executeInMainThreadWithResult: import multiprocessing import maya.utils foo = [] p = multiprocessing.Process(target=maya.utils.executeInMainThreadWithResult, args=(foo.append, 3)) p.start() p.join() ...and this made not difference either. (Actually, as I understand it, since it's running as a separate process, shouldn't it ALREADY be the main thread in that process?) I also tried gui maya 2009 (with the backported module - I tested it with mayapy first to make sure it worked), and also got crashes with multiprocessing. Unless I'm missing something obvious, it seems gui maya + multiprocessing just don't get along... - Paul On Wed, Jun 9, 2010 at 9:18 PM, John Creson <[email protected]> wrote: > In this case, are you printing into a maya gui? > Perhaps, you need to try pushing the print to the main thread, so you > don't step on Maya's event loop. > > import maya.utils > import maya.cmds > def doSphere( radius ): > maya.cmds.sphere( radius=radius ) > maya.utils.executeInMainThreadWithResult( doSphere, 5.0 ) > > On Wed, Jun 9, 2010 at 9:48 PM, Paul Molodowitch <[email protected]> wrote: >> So, given the issues with the GIL lock in python, I was excited about >> using the new multiprocessing module... especially since a back port >> is also available for python 2.5. >> >> I worked beautifully when I was playing around with it from mayapy - >> but as soon as I tried to use it in a GUI maya, maya crashed >> immediately. >> >> For the curious, here's what I was testing with: >> >> import multiprocessing >> from pprint import pprint >> >> p = multiprocessing.Process(target=pprint, args=(dir,)) >> p.start() >> p.join() >> >> Does anyone know if I'm doing anything wrong here? As I said, it seems >> to work fine when done from a console. Or does maya just not like >> multiprocessing? I know that it can have some issues with threads... >> but given that things such as subprocess seem to work fine, I had hope >> for multiprocessing... >> >> - Paul >> >> -- >> http://groups.google.com/group/python_inside_maya > > -- > http://groups.google.com/group/python_inside_maya -- http://groups.google.com/group/python_inside_maya
