CriticalHandle.Close Метод

Определение

Помечает дескриптор для освобождения самого дескриптора и соответствующих ресурсов.

public:
 void Close();
public void Close ();
[System.Security.SecurityCritical]
public void Close ();
member this.Close : unit -> unit
[<System.Security.SecurityCritical>]
member this.Close : unit -> unit
Public Sub Close ()
Атрибуты

Комментарии

Close Вызов метода или Dispose позволяет освободить ресурсы. SafeHandle В отличие от класса, это всегда происходит немедленно, так как количество ссылок не указывает на то, что другие потоки используют этот дескриптор. Поэтому необходимо использовать механизм синхронизации, чтобы обеспечить безопасность вызова Close метода . Хотя большинству классов, использующих CriticalHandle класс , не требуется предоставлять метод завершения, иногда это необходимо (например, для очистки буферов файлов или записи некоторых данных обратно в память). В этом случае класс может предоставить метод завершения, который гарантированно будет выполняться до выполнения критического CriticalHandle метода завершения.

Close Вызовите метод или Dispose по завершении использования CriticalHandle объекта . Метод Close оставляет CriticalHandle объект в непригодном для использования состоянии.

Примечание Всегда вызывайте Close или Dispose перед освобождением последней ссылки на CriticalHandle объект . В противном случае используемые им ресурсы не будут освобождены до тех пор, пока сборщик мусора не вызовет для объекта CriticalHandle метод Finalize.

Применяется к