2014-07-22 8 views
6

So von http://msdn.microsoft.com/en-us/library/ms173161.aspxWelche Ausnahmen umgehen catch-Blöcke in .net

Sobald eine Ausnahme ausgelöst wird, es breitet sich den Call-Stack, bis ein catch-Anweisung für die Ausnahme zu finden ist.

So ist die implcation, dass alle typess Ausnahme kann entweder durch eine catch(ExceptionType) oder ein generisches catch gefangen werden.

Dies ist jedoch offensichtlich nicht wahr. Zum Beispiel umgeht AccessViolationException Standardausnahmebehandlung

How to handle AccessViolationException

So was andere Ausnahmen umgehen auch Standard-Ausnahmebehandlung?

+1

Meinst du, andere als die in der angenommenen Antwort auf diese andere Frage? –

+0

@RowlandShaw Ich warf das ein Beispiel aus, um Leute zu stoppen, die antworten "keine Ausnahmen umgehen catch Blöcke". Ich bin neugieriger, wenn es eine endgültige Liste irgendwo gibt oder mehrere Antworten auf diese können, kumulativ, die endgültige Liste werden – Simon

Antwort

1

Ich würde sagen, dass ein StackOverflowException am ehesten unbehandelt ist, ich bin mir nicht bewusst, andere.

+1

Sie sollten während der Kühnheit sein, eine solche Frage zu beantworten. – AgentFire

+0

Das wird aus verschiedenen Gründen nicht behandelt. Die Behandlung einer solchen Ausnahme würde einen Stapel erfordern, der aus offensichtlichen Gründen nicht verfügbar ist. Eine solche Ausnahme wird vom Betriebssystem gehandhabt, das die Anwendung sofort beendet. –

+0

Die Frage ist, welche anderen Ausnahmen die Standardausnahmebehandlung umgehen, und StackOverflowException umgeht diese Behandlung. – LazyOfT

Verwandte Themen