Когда во время выполнения возникает условие нехватки памяти, он вызывает ThrowOutOfMemory . Это вызывает Exception :: GetOOMException , который создает объект в стеке, а затем копирует его в статически размещенный глобальный экземпляр, который затем генерируется.
Это не удалось Exception, хотя, это исключение C ++ объявлено в ex.h . Исключения C ++ преобразуются в управляемые исключения в clrex.cpp , который содержит код, который специально генерирует предварительно выделенное управляемое исключение OutOfMemoryException, которое изначально было размещено и создано в appdomain.cpp .
Примечание. Некоторые из этих исходных файлов имеют большой размер и могут зависать в браузере на несколько секунд, пока загружается подсветка синтаксиса.
Сайты вызовов, которые Тим Шмельтер связал в комментарии к другому ответу, не связаны с тем, что во время выполнения не хватает памяти и невозможности создать объект.