Ich möchte eine Methode erstellen, die mir sagen kann, ob eine Ausnahme erneut versucht werden kann oder nicht. Ausnahmen sind von 3rd-Party-Bibliothek. Also ich habe so etwas wie dies:Leistungseinfluss von langen Fangliste C++
bool isRetryable (std::exception_ptr ex) {
try {
if(ex) {
std::rethrow_exception (ex);
}
return true;
} catch (const ExceptionA& ex) {
return true;
} catch (const ExceptionB& ex) {
return true;
} catch (const ExceptionC& ex) {
return true;
} catch (const ExceptionD& ex) {
return false;
} catch (const ExceptionE& ex) {
return false;
} catch (const ExceptionF& ex) {
return false;
}
}
Die Liste der Ausnahmen als 100 so lange gehen kann, so meine Frage ist - was die Auswirkungen einer langen Liste von Ausnahme und gibt es eine andere Möglichkeit, das gleiche zu erreichen Tor ?
Ich meine, Sie können versuchen, sich selbst zu messen. Wenn die Ausnahmen eine gemeinsame Basis haben, können Sie dynamic_casts ausprobieren: Wenn sie jedoch schneller sind, müssen Sie messen. – Hayt