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
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MemoryPressure.cs
- MetadataCache.cs
- ApplicationHost.cs
- SHA512.cs
- UIElementCollection.cs
- HttpListenerResponse.cs
- NetPipeSectionData.cs
- TargetException.cs
- TogglePattern.cs
- EventLogStatus.cs
- ScriptControlDescriptor.cs
- Point.cs
- DSASignatureDeformatter.cs
- UpDownBase.cs
- TreeViewImageKeyConverter.cs
- DataTableCollection.cs
- UIServiceHelper.cs
- MatrixAnimationBase.cs
- SqlClientMetaDataCollectionNames.cs
- ItemsPanelTemplate.cs
- OracleInternalConnection.cs
- UriTemplateMatchException.cs
- AssociationTypeEmitter.cs
- PackageDigitalSignatureManager.cs
- XmlSchemaObject.cs
- NavigationFailedEventArgs.cs
- EndpointDiscoveryMetadata.cs
- WizardStepCollectionEditor.cs
- httpserverutility.cs
- CharAnimationBase.cs
- HttpHeaderCollection.cs
- OrderingQueryOperator.cs
- ChtmlTextWriter.cs
- FunctionNode.cs
- VBCodeProvider.cs
- versioninfo.cs
- BinaryReader.cs
- PolicyException.cs
- TextTrailingWordEllipsis.cs
- XpsDocument.cs
- ListBoxAutomationPeer.cs
- ColumnMap.cs
- SchemaCollectionCompiler.cs
- EntityContainerRelationshipSet.cs
- IsolatedStorageFileStream.cs
- MimeReflector.cs
- CodeIdentifier.cs
- ReadOnlyTernaryTree.cs
- TextMarkerSource.cs
- ResourceContainerWrapper.cs
- SendActivityDesignerTheme.cs
- DrawingVisualDrawingContext.cs
- ImageListStreamer.cs
- HuffCodec.cs
- FrameworkTextComposition.cs
- MergeLocalizationDirectives.cs
- InstanceDescriptor.cs
- Missing.cs
- BulletChrome.cs
- FileDetails.cs
- DrawingAttributeSerializer.cs
- WebControlsSection.cs
- Types.cs
- securitycriticaldataformultiplegetandset.cs
- streamingZipPartStream.cs
- NumberFunctions.cs
- COM2ColorConverter.cs
- XmlImplementation.cs
- XmlExtensionFunction.cs
- ExpressionParser.cs
- AutomationTextAttribute.cs
- ServiceBehaviorElement.cs
- FloaterBaseParagraph.cs
- TypeConverterValueSerializer.cs
- ClipboardProcessor.cs
- HelpPage.cs
- ProtocolsConfiguration.cs
- Label.cs
- ActivityDesigner.cs
- ReturnEventArgs.cs
- Rectangle.cs
- OleDbCommandBuilder.cs
- EncoderExceptionFallback.cs
- PropertyGeneratedEventArgs.cs
- InstalledFontCollection.cs
- Pair.cs
- SessionViewState.cs
- ValidationService.cs
- SQLInt16Storage.cs
- XmlAnyElementAttribute.cs
- Debugger.cs
- WebPart.cs
- StrokeFIndices.cs
- NavigateEvent.cs
- NoneExcludedImageIndexConverter.cs
- Margins.cs
- SmiMetaDataProperty.cs
- SchemaReference.cs
- SapiGrammar.cs
- DefaultCommandExtensionCallback.cs