I get the same on Mac, but with a spamming of errors in the console.
subprocess seems to work ok though.


On Thu, Jun 10, 2010 at 3:18 PM, Judah Baron <[email protected]> wrote:
> You might try Qt's threads?
>
> On Thu, Jun 10, 2010 at 9:43 AM, Paul Molodowitch <[email protected]>
> wrote:
>>
>> 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
>
> --
> http://groups.google.com/group/python_inside_maya

-- 
http://groups.google.com/group/python_inside_maya

Reply via email to