Здравствуйте, -rsdn-, Вы писали:
R>единственное что нашел R>StackOverflowException R>ExecutingEngineException R>при их срабатывании finally не перехватит исключение
Если убить процесс вовремя, finally не отработает, естественно.
Да, в исходной постановке вопрос странный.
А вот если его перефразировать на "В каких случаях блок finally не исполнится" — вот это уже гораздо интереснее и практичнее.
Была даже байка, когда двое собеседователей, получив ответ кандидата на этот вопрос, переглянулись
и их лица побелели, т.к. этот ответ, по-видимому, порушил не только их мир, но и логику всего проекта
А ответ был простым и неубиваемым: "Блок finally не исполнится, к примеру, если мы вытащим вилку питания сервера из розетки"
Здравствуйте, andy1618, Вы писали:
A>А ответ был простым и неубиваемым: "Блок finally не исполнится, к примеру, если мы вытащим вилку питания сервера из розетки"
Блок finally может не исполниться в .net 3.5 и младших версиях, при некоторых исключительных обстоятельствах. Была статья про это.
Здравствуйте, Слава, Вы писали:
A>>А ответ был простым и неубиваемым: "Блок finally не исполнится, к примеру, если мы вытащим вилку питания сервера из розетки"
С>Блок finally может не исполниться в .net 3.5 и младших версиях, при некоторых исключительных обстоятельствах. Была статья про это.
Ну да, в той байке, помнится, кандидат начал ответ именно с этих примеров (stack overflow exception, FailFast),
но собеседователи отмахивались, что, мол, "вы неправы, читайте документацию". Вот тогда-то он и привёл пример со шнуром питания
Здравствуйте, Pavel Dvorkin, Вы писали:
R>>нет, среди списка прочих вопросов такое решение было бы ниже плинтуса PD>Ну если на собеседовании, то, может, и да. А если по существу — почему ?
Странные вопросы какие-то. Одновременно и непростые, и бесполезные на практике. Это как спрашивать на собеседовании про "пробивать доску пальцем". Оно конечно ого, но я лучше дрель возьму.