Как CLR находит классы, которые реализуют IDisposable? - PullRequest
3 голосов
/ 09 августа 2011

Мне нужны пояснения по поводу & hellip;

  1. & hellip; как CLR & mdash; более конкретно, сборщик мусора & mdash; находит классы, которые реализуют интерфейс IDisposable; и

  2. & hellip; как он вызывает метод Dispose (всех классов, которые реализуют интерфейс IDisposable) для освобождения памяти?

Ответы [ 2 ]

4 голосов
/ 09 августа 2011

CLR не вызывает Dispose (), это зависит от кода пользователя, который вызывается либо напрямую, либо с помощью оператора using. CLR, однако, вызовет финализаторы , хотя это не гарантируется.

1 голос
/ 09 августа 2011

Dispose не вызывается автоматически. Компилятор генерирует вызовы к Dispose, когда вы пишете using или вызываете Dispose напрямую.

...