2016-07-25 27 views
3

我有一個程序,產生一堆使用多處理庫的工作守護進程。如何調試沉默崩潰?多處理python

有時候,這些守護進程偶爾會崩潰並死亡。這不是由python級別的Exception引起的。崩潰似乎是完全沉默...

任何人都可以提供關於如何可以去調試這個問題的提示?

+1

'multiprocessing.log_to_stderr()' –

回答

0

faulthandler庫可能有助於調試此類行爲。在每一道工序run方法來回溯保存爲獨立的文件運行此代碼:

f = open('fault_%s.log' % multiprocessing.current_process().name, 'w') 
faulthandler.enable(file=f, all_threads=True)