2014-12-30 5 views
1

MSDN указывает, что если метод Dispose не вызывается, то любые ресурсы не будут освобождены до тех пор, пока GC не вызовет финализатор объекта ReaderWriterLockSlim.Есть ли у ReaderWriterLockSlim финализатор?

Однако класс ReaderWriterLockSlim не содержит финализатор (с использованием .NET Reflector), почему бы и нет? Perhabs означает, что они означают процесс «финализации» в GC, а не метод Finalize?

сноска; Я знаю, что я должен всегда располагать одноразовыми объектами.

+0

Ошибка копирования/вставки в статье MSDN, а не редкость. –

ответ

1

ReaderWriterLockSlim не владеет собственными неуправляемыми ресурсами, поэтому ему не нужен финализатор.

Его Dispose method (source) просто располагает другими управляемыми ресурсами.

Если вы его не уничтожили, его управляемые ресурсы будут запускаться their finalizers и освободить базовые дескрипторы.

+0

Хорошо, поэтому я предполагаю, что документация не так точна, как хотелось бы. – toplel32

Смежные вопросы