Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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).

like image 525
Guy Avatar asked Jul 17 '11 13:07

Guy


1 Answers

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.

like image 174
Mikko Ohtamaa Avatar answered Oct 02 '22 04:10

Mikko Ohtamaa