Все в конечном итоге JITed в собственный машинный код, поэтому в конечном счете у нас есть собственный стек в .NET, который GC должен сканировать для указателей объектов всякий раз, когда он делает сборку мусора.
Теперь возникает вопрос: как сборщик мусора .NET выясняет, является ли указатель на объект внутри кучи GC фактически управляемым указателем или случайным целым, которое имеет значение, соответствующее действительному адресу?
Очевидно, если он не может отличить два, тогда могут быть утечки памяти, поэтому мне интересно, как это работает. Или, может быть, я говорю это - у .NET есть потенциал для утечки памяти?: О