<PackageReference Include="NETStandard.Library" Version="2.0.3" />

System.Runtime.InteropServices.SafeHandle

protected IntPtr handle

public bool IsClosed { get; }

public abstract bool IsInvalid { get; }

protected SafeHandle(IntPtr invalidHandleValue, bool ownsHandle)

public void Close()

public void DangerousAddRef(ref bool success)

public IntPtr DangerousGetHandle()

public void DangerousRelease()

public void Dispose()

protected virtual void Dispose(bool disposing)

protected abstract bool ReleaseHandle()

protected void SetHandle(IntPtr handle)

public void SetHandleAsInvalid()