| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Пустой try с кодом в finally |
| Автор: Mephisto 26.7.2010, 15:04 | ||
Люди, для чего иногда пишут такой код
Чем отличается код исполняемый таким образом от обычного, ведь смысла логического нет? Должно быть разница в реализации есть. |
| Автор: nmn 26.7.2010, 19:42 | ||||||||
| разница в il коде будет 1:
2:
|
| Автор: Mephisto 27.7.2010, 00:26 |
| Да, в иле я тоже видел разницу. Из него и восстанавливал исходный код по сути. nmn, а о смысле использования столь геморного кода есть мысли? Я смотрю создатели дотнета так иногда с потоками работают. |
| Автор: nmn 27.7.2010, 00:35 |
| вот нашел http://blog.somecreativity.com/2008/04/10/the-empty-try-block-mystery/ The MSDN page of Thread.Abort says that “Unexecuted finally blocks are executed before the thread is aborted”. So in order to guarantee that your processing finishes even if your thread is aborted in the middle by someone calling Abort on your thread, you can place all your code in the finally block (the alternative is to write code in the “catch” block to determine where you were before “try” was interrupted by Abort and proceed from there if you want to). |
| Автор: Mephisto 27.7.2010, 10:55 |
| nmn, да, это оно. Теперь вроде понятно. уууууу, грибыыы |