다음을 통해 공유


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 ()
특성

설명

또는 Dispose 메서드를 Close 호출하면 리소스를 해제할 수 있습니다. 클래스와 SafeHandle 달리 다른 스레드가 이 핸들을 사용하고 있음을 나타내는 참조 수가 없으므로 항상 즉시 발생합니다. 따라서 동기화 메커니즘을 사용하여 메서드를 안전하게 호출 Close 해야 합니다. 클래스를 사용하는 CriticalHandle 대부분의 클래스는 종료자를 제공할 필요가 없지만 파일 버퍼를 플러시하거나 일부 데이터를 메모리에 다시 쓰려면 이 작업이 필요할 수 있습니다. 이 경우 클래스는 중요 종료자가 실행되기 전에 CriticalHandle 실행되도록 보장되는 종료자를 제공할 수 있습니다.

개체 사용을 Close 마치면 또는 Dispose 메서드를 호출합니다 CriticalHandle . 메서드는 Close 개체를 CriticalHandle 사용할 수 없는 상태로 둡니다.

참고 개체에 대한 마지막 참조를 해제하기 전에 항상 또는 Dispose 를 호출 Close 합니다CriticalHandle. 이렇게 하지 않으면 가비지 수집기가 CriticalHandle 개체의 Finalize 메서드를 호출할 때까지 사용 중인 리소스가 해제되지 않습니다.

적용 대상