Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Кстати, словил щас OutOfMemoryException из StringBuilder.Append(), поймалось в try-catch без проблем. Все-таки кто-нибудь из местных гуру может точно сказать (ну так, интересно для саморазвития), есть ли ситуации когда OutOfMemoryException не ловится (как StackOverflowException)? Т.е. всё-таки к каким его относить — к отлавливаемым или нет?
Здравствуйте, MozgC, Вы писали:
MC>Кстати, словил щас OutOfMemoryException из StringBuilder.Append(), поймалось в try-catch без проблем. Все-таки кто-нибудь из местных гуру может точно сказать (ну так, интересно для саморазвития), есть ли ситуации когда OutOfMemoryException не ловится (как StackOverflowException)? Т.е. всё-таки к каким его относить — к отлавливаемым или нет?
К ошибкам дизайна .NET
Они его почему-то бросают и в случае, если jitter-у не хватило памяти на компиляцию метода. Соответственно, ее может не хватить и на компиляцию чего-то вызываемого в catch-блоке. А тогда — повторное исключение и до свидания. Я кстати, не понимаю почему нет возможности заставить рантайм заджитить всю сборку при загрузке (или есть?).
В общем, дело ясное, что дело темное. Лично для меня подобные "тонкости" — это минус дотнету при выборе платформы для очередного проекта (хотя, надо признать, его плюсы в последнее время начинают перевешивать
).
... << RSDN@Home 1.2.0 alpha 4 rev. 1228>>