Ketika kondisi kehabisan memori ditemukan di dalam runtime, ia memanggil ThrowOutOfMemory . Ini memanggil Exception :: GetOOMException , yang membuat objek pada stack dan kemudian menyalinnya ke instance global yang dialokasikan secara statis, yang kemudian dibuang.
Namun, ini bukan Pengecualian yang dikelola, ini merupakan pengecualian C ++ yang dinyatakan dalam ex.h . C ++ Pengecualian dikonversi ke Pengecualian terkelola di clrex.cpp , yang berisi kode untuk secara khusus membuang OutOfMemoryException terkelola yang dialokasikan sebelumnya, yang awalnya dialokasikan dan dibuat di appdomain.cpp .
Catatan: Beberapa file sumber ini berukuran besar dan dapat menggantung browser Anda selama beberapa detik saat memuat highlight sintaksis.
Situs panggilan yang ditautkan oleh Tim Schmelter dalam komentar pada jawaban lain tidak terkait dengan runtime kehabisan memori dan tidak dapat membangun objek.