Microsoft.Win32.SafeHandles.SafePipeHandle.ReleaseHandle C# (CSharp) Method

ReleaseHandle() protected method

protected ReleaseHandle ( ) : bool
return bool
        protected override bool ReleaseHandle()
        {
            Debug.Assert(!IsInvalid);

            // Clean up resources for named handles
            if (_namedPipeSocketHandle != null)
            {
                SetHandle(DefaultInvalidHandle);
                _namedPipeSocketHandle.DangerousRelease();
                _namedPipeSocketHandle = null;
                return true;
            }

            // Clean up resources for anonymous handles
            return (long)handle >= 0 ?
                Interop.Sys.Close(handle) == 0 :
                true;
        }