Stellen Sie sicher, dass Objective-C-Code ausgeführt wird, bevor Cocoa Application beendet wird

Angenommen, eine Kakao-App muss vor dem Beenden eine wichtige Ziel-c-Operation ausführen (aus irgendeinem Grund - Absturz oder Beenden).

Ist es möglich, die Ausführung von beliebigem Objective-C-Code als Reaktion auf jedes Absturzereignis sicherzustellen? (SIGINT, SIGBUS, SIGSEGV, etc, ignoriert die "uncatchables" (SIGSTOP, SIGKILL, Blitz usw.))

Es wäre hilfreich zu wissen, was Ihre Hooks versuchen.

Beispiel: Nehmen wir an, dass die App für den Betrieb unbedingt den Wert einer systemweiten Konfigurationsvariablen X ändern muss. Beim Start erstellt die App einen Schnappschuss des aktuellen Status von X und ändert ihn anschließend. Wenn die App erfolgreich beendet wird, wird X vor dem Beenden auf den verdeckten ursprünglichen Wert zurückgesetzt. Meine Frage lautet: Kann sichergestellt werden, dass X wiederhergestellt wird, auch wenn die App abstürzt?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage