Как происходит обработка блока finally, если идет конструкция
try {
try { }
catch {}
finally {}
}
catch {}
finally {}
Сработает тот и тот блок или же?
Должны отработать оба finally, т.к. блок finally Отрабатывает всегда (см. документацию), если исключение поймано. Если не поймано, то здесь уже нет гарантий выполнения.
static void Main(string[] args)
{
try{
try{
throw new Exception();
}
catch{
Console.WriteLine("Inner catch");
}
finally{
Console.WriteLine("Inner finally");
}
}
catch{
Console.WriteLine("Outer catch");
}
finally{
Console.WriteLine("Outer finally");
}
}
Результат:
Inner catch
Inner finally
Outer finally
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники