Asegurar la ejecución del código Objective-C antes de que se cierre la aplicación Cocoa
Supongamos que una aplicación de cacao debe ejecutar alguna operación de objetivo-c de vital importancia antes de que se cierre (por cualquier motivo, bloqueo o cierre).
¿Es posible garantizar la ejecución de código de objetivo-c arbitrario en respuesta a cada evento de fallo? (SIGINT
, SIGBUS
, SIGSEGV
, etc, ignorando los "incatchables" (SIGSTOP
, SIGKILL
, rayo de luz, etc.))
Sería útil saber qué intentan hacer tus ganchos.
Por ejemplo: digamos que para que la aplicación funcione, debe cambiar absolutamente el valor de alguna variable de configuración mutable X del sistema. Al iniciarse, la aplicación toma una instantánea del estado actual de X y luego la modifica. Cuando la aplicación sale con éxito, solo restaura X al valor escondido original antes de terminar. Mi pregunta es la siguiente: ¿es posible garantizar que X se restaure incluso si la aplicación falla?