Search code examples
pythoneclipsedebuggingpydevmultiprocess

python: How to debug multiprocess? (using eclipse+pydev)


I've seen a couple of questions on the topic but I didn't get a full answer...

My code is basically:

from multiprocessing import Process

p = Process(target=f).start()
p.join()

def f():
  print 'break!'

And I want to put a breakpoint on the print. I'm using pydev+eclipse (on Ubuntu).


Solution

  • Because the new process itself is not controlled by PyDev, you need to make PyDev debugger manually aware of through Remote Debugging facilities.

    http://pydev.org/manual_adv_remote_debugger.html

    Use pydevd.set_trace() - notice that your breakpoints won't work (not sure if this has changed recent PyDev versions), but you need to manually enter set_trace() command to your code.