SafeHandle.Dispose SafeHandle.Dispose SafeHandle.Dispose SafeHandle.Dispose Method

정의

SafeHandle 클래스에서 사용하는 리소스를 해제합니다.Releases the resources used by the SafeHandle class.

오버로드

Dispose() Dispose() Dispose() Dispose()

SafeHandle 클래스에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the SafeHandle class.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

일반적인 삭제 작업을 수행할지 여부를 지정하여 SafeHandle 클래스에서 사용하는 관리되지 않는 리소스를 해제합니다.Releases the unmanaged resources used by the SafeHandle class specifying whether to perform a normal dispose operation.

Dispose() Dispose() Dispose() Dispose()

SafeHandle 클래스에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the SafeHandle class.

public:
 virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()

구현

설명

호출 된 Close 또는 Dispose 메서드를 사용 하면 리소스를 해제 합니다.Calling the Close or Dispose method allows the resources to be freed. 이 다른 스레드가 동일한 인스턴스의 safehandle 사용 하는 경우 즉시 발생 하지 않을 수 있지만 없는 경우 즉시 수행 됩니다.This might not happen immediately if other threads are using the same instance of the safe handle, but will happen as soon as that is no longer the case. 하지만 대부분의 클래스를 사용 하 여 SafeHandle 때때로이 작업이 필요 (예: 파일 버퍼를 플러시 하거나 메모리에 일부 데이터를 다시 쓸), 종료자를 제공할 필요가 없습니다.Although most classes using SafeHandle do not need to provide a finalizer, this is sometimes necessary (for example, to flush out file buffers or to write some data back into memory). 이 경우 보다 먼저 실행 되도록 보장 되는 종료자를 제공할 수 있습니다는 SafeHandle 중요 종료자 실행 합니다.In this case, they can provide a finalizer that is guaranteed to run before the SafeHandle critical finalizer runs.

호출을 Close 또는 Dispose 마쳤으면 메서드를 사용 하 여는 SafeHandle 개체입니다.Call the Close or Dispose method when you are finished using the SafeHandle object. 합니다 Close 메서드를 사용 하면은 SafeHandle 불안정 한 상태가 개체입니다.The Close method leaves the SafeHandle object in an unusable state.

참고

항상 호출 합니다 Close 또는 Dispose 에 대 한 마지막 참조를 해제 하기 전에 메서드를 SafeHandle 개체입니다.Always call the Close or Dispose method before you release your last reference to the SafeHandle object. 이렇게 하지 않으면 가비지 컬렉션이 SafeHandle 개체의 Finalize 메서드를 호출할 때까지 사용 중인 리소스가 해제되지 않습니다.Otherwise, the resources it is using will not be freed until the garbage collector calls the SafeHandle object's Finalize method.

보안

SecurityPermission
관리 되지 않는 코드를 호출할 수 있는 권한입니다.for permission to call unmanaged code. 보안 동작: LinkDemand합니다.Security action: LinkDemand. 연결 된 열거형: UnmanagedCodeAssociated enumeration: UnmanagedCode

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

일반적인 삭제 작업을 수행할지 여부를 지정하여 SafeHandle 클래스에서 사용하는 관리되지 않는 리소스를 해제합니다.Releases the unmanaged resources used by the SafeHandle class specifying whether to perform a normal dispose operation.

protected:
 virtual void Dispose(bool disposing);
[System.Security.SecurityCritical]
protected virtual void Dispose (bool disposing);
abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit
Protected Overridable Sub Dispose (disposing As Boolean)

매개 변수

disposing
Boolean Boolean Boolean Boolean

일반적인 삭제 작업을 수행하려면 true로 설정하고, 핸들을 종료하려면 false로 설정합니다.true for a normal dispose operation; false to finalize the handle.

설명

명시적으로 호출 해야 합니다 Dispose 메서드를 disposing 매개 변수 설정 false합니다.You should never explicitly call the Dispose method with the disposing parameter set to false.

보안

SecurityPermission
관리 되지 않는 코드를 호출할 수 있는 권한입니다.for permission to call unmanaged code. 보안 동작: LinkDemand합니다.Security action: LinkDemand. 연결 된 열거형: UnmanagedCodeAssociated enumeration: UnmanagedCode

적용 대상