Impedir el mensaje de "la aplicación se cerró inesperadamente" en sigquit

12

Mato los procesos de Python con SIGQUIT presionando Ctrl \ a veces (generalmente los míos que se están portando mal). ¿Puedo evitar el mensaje "Python quit inesperadamente"? Sé que puedo simplemente escapar, así que no está tan mal.

"Python se cerró inesperadamente." diálogo

    
pregunta Thomas 21.10.2013 - 00:17

3 respuestas

13

Si nunca desea ver los cuadros de diálogo del informe de fallos, hay una preferencia para deshabilitarlos:

defaults write com.apple.CrashReporter DialogType none

Cierre la sesión y vuelva a iniciarla para aplicar los cambios.

    
respondido por el user495470 21.10.2013 - 12:10
5

También puede hacer que el mensaje aparezca como una notificación en su lugar:

defaults write com.apple.CrashReporter UseUNC 1
    
respondido por el Tim Baverstock 24.08.2016 - 11:17
3

El comportamiento predeterminado al recibir SIGQUIT es volcar el núcleo y salir; el reportero de fallos se activa como parte de este proceso.

Comenzando con 10.5 (?), simplemente establecer un manejador de señal para SIGQUIT debería ser suficiente para evitar el reporte de fallos; probablemente querrá que el controlador también llame a exit.

import signal, sys, os

def sigquit_handler(signum, frame):
    print 'SIGQUIT received; exiting'
    sys.exit(os.EX_SOFTWARE)

signal.signal(signal.SIGQUIT, sigquit_handler)

# Do your normal work instead of this
print 'Waiting for a signal...'
signal.pause()

El código anterior se probó en 10.8.5 contra /usr/bin/python , que es 2.7.2.

    
respondido por el Chris Johnsen 21.10.2013 - 21:12

Lea otras preguntas en las etiquetas