У меня есть критическая логика в блоке finally (с пустым блоком try), потому что я хочу гарантировать, что код будет выполнен, даже если поток будет прерван. Тем не менее, я также хотел бы обнаружить ThreadAbortException. Я обнаружил, что перенос моего критического блока try/finally в try/catch не захватывает ThreadAbortException. Есть ли способ обнаружить это?
try {
try { }
finally {
// critical logic
}
} catch(Exception ex) {
// ThreadAbortException is not caught here, but exceptions thrown
// from within the critical logic are
}