Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / clr / src / BCL / Microsoft / Win32 / SafeHandles / SafeWaitHandle.cs / 5 / SafeWaitHandle.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: SafeWaitHandle ** ** ** A wrapper for Win32 events (mutexes, auto reset events, and ** manual reset events). Used by WaitHandle. ** ** ===========================================================*/ using System; using System.Security; using System.Security.Permissions; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; using System.Runtime.ConstrainedExecution; using System.Runtime.Versioning; using Microsoft.Win32; using System.Threading; namespace Microsoft.Win32.SafeHandles { [SecurityPermission(SecurityAction.LinkDemand,UnmanagedCode=true)] public sealed class SafeWaitHandle : SafeHandleZeroOrMinusOneIsInvalid { // Called by P/Invoke marshaler private SafeWaitHandle() : base(true) { } [ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)] public SafeWaitHandle(IntPtr existingHandle, bool ownsHandle) : base(ownsHandle) { SetHandle(existingHandle); } [ResourceExposure(ResourceScope.Machine)] [ResourceConsumption(ResourceScope.Machine)] override protected bool ReleaseHandle() { return Win32Native.CloseHandle(handle); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: SafeWaitHandle ** ** ** A wrapper for Win32 events (mutexes, auto reset events, and ** manual reset events). Used by WaitHandle. ** ** ===========================================================*/ using System; using System.Security; using System.Security.Permissions; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; using System.Runtime.ConstrainedExecution; using System.Runtime.Versioning; using Microsoft.Win32; using System.Threading; namespace Microsoft.Win32.SafeHandles { [SecurityPermission(SecurityAction.LinkDemand,UnmanagedCode=true)] public sealed class SafeWaitHandle : SafeHandleZeroOrMinusOneIsInvalid { // Called by P/Invoke marshaler private SafeWaitHandle() : base(true) { } [ReliabilityContract(Consistency.WillNotCorruptState, Cer.MayFail)] public SafeWaitHandle(IntPtr existingHandle, bool ownsHandle) : base(ownsHandle) { SetHandle(existingHandle); } [ResourceExposure(ResourceScope.Machine)] [ResourceConsumption(ResourceScope.Machine)] override protected bool ReleaseHandle() { return Win32Native.CloseHandle(handle); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TextSelectionHelper.cs
- SrgsGrammarCompiler.cs
- OleDbRowUpdatingEvent.cs
- RightNameExpirationInfoPair.cs
- CategoryNameCollection.cs
- AccessDataSource.cs
- ListViewDataItem.cs
- WebPartZoneCollection.cs
- ThreadAbortException.cs
- GetWinFXPath.cs
- IgnoreFileBuildProvider.cs
- EmptyEnumerable.cs
- Scripts.cs
- StructuredTypeEmitter.cs
- ASCIIEncoding.cs
- DbSourceCommand.cs
- TdsParserSessionPool.cs
- FileClassifier.cs
- ComboBoxItem.cs
- HttpVersion.cs
- OperandQuery.cs
- FloaterParaClient.cs
- XmlSchemaSimpleType.cs
- VirtualPathProvider.cs
- TextEvent.cs
- DesignerExtenders.cs
- CanonicalFormWriter.cs
- DataGridViewCellMouseEventArgs.cs
- OutOfProcStateClientManager.cs
- PathFigureCollectionConverter.cs
- ContextMenu.cs
- ViewKeyConstraint.cs
- PathFigure.cs
- TextElement.cs
- StrongName.cs
- TrackingServices.cs
- DataGridViewControlCollection.cs
- Int32CollectionConverter.cs
- StyleCollection.cs
- D3DImage.cs
- SchemaNamespaceManager.cs
- MediaCommands.cs
- ResourceAttributes.cs
- ListControl.cs
- XmlSchemaChoice.cs
- AssociationSet.cs
- _TLSstream.cs
- ManageRequest.cs
- DataGridViewCellCollection.cs
- SecurityKeyType.cs
- DbConnectionOptions.cs
- XmlImplementation.cs
- PageSettings.cs
- RotateTransform.cs
- ISSmlParser.cs
- TableSectionStyle.cs
- Mappings.cs
- CreateParams.cs
- ArithmeticException.cs
- FileFormatException.cs
- LongValidatorAttribute.cs
- DataColumnCollection.cs
- Clipboard.cs
- DbParameterCollectionHelper.cs
- TextTreeText.cs
- SQLGuidStorage.cs
- UIInitializationException.cs
- GeneralTransform3DTo2D.cs
- ReadingWritingEntityEventArgs.cs
- PointConverter.cs
- StateWorkerRequest.cs
- Storyboard.cs
- SmtpLoginAuthenticationModule.cs
- AllowedAudienceUriElement.cs
- RemoteWebConfigurationHostStream.cs
- InsufficientMemoryException.cs
- DataGridViewColumnStateChangedEventArgs.cs
- ACL.cs
- XmlSchemaSimpleTypeRestriction.cs
- XmlMtomWriter.cs
- XamlDesignerSerializationManager.cs
- WasNotInstalledException.cs
- LinkConverter.cs
- MsmqHostedTransportConfiguration.cs
- SourceElementsCollection.cs
- IOException.cs
- ForwardPositionQuery.cs
- SafeBitVector32.cs
- ExpressionVisitor.cs
- Pen.cs
- CodeMemberProperty.cs
- DbUpdateCommandTree.cs
- BinaryCommonClasses.cs
- Types.cs
- _AuthenticationState.cs
- OperationPerformanceCounters.cs
- DrawingAttributeSerializer.cs
- HtmlLink.cs
- CodeCatchClauseCollection.cs
- SupportsEventValidationAttribute.cs