Segmentación de fallas de captura

Tengo una secuencia de comandos de Python y pasará por un montón de archivos maya y hará algunas cosas. Pero en algún momento maya tiene una falla en seg y mi script se detendrá ahí. Lo intenté con señal y multiprocesamiento. Pero ambos fallaron

import os, optparse, glob, json, signal import maya.standalone import maya.cmds as cmds from multiprocessing import Process, Queue def loadMayaBd(): maya.standalone.initialize(name='python') def sig_handler(signum, frame): print "segfault" def doSome(args, options): signal.signal(signal.SIGSEGV, sig_handler) loadMayaBd() #from here its just a example fileNameList = args[0] for eachFile in fileNameList: #this is throwing the seg fault #I want continue my for llop even if there is any segfault #I don't want to exit python coz of that segfault cmds.file(eachFile, force = 1, open = 1) if __name__ == "__main__": usage = "usage: %prog [options] args(file list)" parser = optparse.OptionParser(usage) parser.add_option("-l", "--log", dest="log", help="Log File Path", metavar="LOG_FILE") parser.add_option("-v", "--verbose", dest="verbose", help="Print All Logs", metavar="VERBOSE", default=False, action='store_true') (options, args) = parser.parse_args() if len(args) <= 0: errorMsg = "You must pass file path list for crawling" raise RuntimeError(errorMsg) p = Process(target=doSome, args=(args, options)) p.start() p.join() 

Ambos fallaron.

¿Algún otro método que pueda atrapar la falla seg y continuar con el siguiente?

Gracias

Esto funciona para mí:

 import os import signal def sig_handler(signum, frame): print "segfault" signal.signal(signal.SIGSEGV, sig_handler) os.kill(os.getpid(), signal.SIGSEGV) while True: pass 

¿Está seguro de que está atrapando la falla de seguridad en cada proceso que está generando?