2013-10-20 10 views
7

In Xcode können Sie zur Registerkarte Haltepunkte gehen und dann einen Haltepunkt für "Alle Ausnahmen" hinzufügen.Wie kann der Breakpoint "All Exceptions" für Ausnahmen außerhalb von @try {} @catch {} verwendet werden?

finde ich sehr hilfreich, aber ist es möglich, dass diese das Programm nur, wenn die Ausnahme zu brechen nicht von einem @try {} @catch {} in meinem Code behandelt? Das sind die einzigen, die mich interessieren.

Es wäre noch schöner, wenn ich bestimmte Dateien auswählen könnte, in denen ich dieses Haltepunktsystem verwenden möchte, obwohl ich denke, dass das ein bisschen zu viel verlangt ist.

Antwort

1

Das Beste, was ich gefunden habe, ist brechen auf Abbruch; Es wird die Ausnahme und Backtrace im Protokoll vor dem Brechen drucken. Vielleicht haben Sie auch Glück, Ihren eigenen unbehandelten Exception-Handler zu setzen und damit zu brechen.

Wenn Sie wirklich alle Ausnahmen, wie Sie beschrieben verwenden möchten, wenden Sie sich bitte einen Bug mit Apfel-Datei:

http://bugreport.apple.com

+0

Unhandled Exception-Handler funktioniert super. Sie können '- [NSException callStackSymbols]' für die Stack-Ablaufverfolgung genau in dem Moment verwenden, in dem die Ausnahme ausgelöst wurde. Dies funktioniert nur für Objective-C-Ausnahmen. Sie können Signalhandler auch für Signalausnahmen registrieren. –