Szukałem kodu, który refaktoryzuję i zauważam, że próbuję ... kod catch zawija całkiem sporo kodu, nie ze wszystkich, które wyrzuciłoby "normalne" wyjątki, tj. Kod nie rzuciłby się w ogóle lub gdyby czy byłyby to całkowicie fatalne wyjątki, takie jak wyjątki z pamięci.Czy próba owinięcia nadmiernego kodu jest akceptowalna?
Zastanawiam się teraz, czy zawijanie zbyt dużej ilości instrukcji try może powodować problemy z wydajnością?
Więc widzę coś takiego:
try
{
// Won't throw (I think that is the case anyway!)
if (e.Error == null)
{
return;
}
// Only fatal exceptions
myClass c = new myClass();
// Now carry out the code that could cause catchable exception
}
catch
{
}
'e.Error' * wyrzuci wyjątek, jeśli' e' ma wartość null. –
Komentarz fair :-) Ze względu na moje pytanie przyjmijmy, że e nie jest zerowe. Właśnie zastanawiałem się, czy spróbuj owijania zwiększa wydajność naprawdę – Firedragon
+1 Dobre pytanie, id być zainteresowany, aby wiedzieć to też – Purplegoldfish