Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / clr / src / BCL / Microsoft / Win32 / SafeHandles / SafeWaitHandle.cs / 1 / 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
- HttpHandlersSection.cs
- _OSSOCK.cs
- CodeDefaultValueExpression.cs
- MethodBuilderInstantiation.cs
- Helper.cs
- List.cs
- ObjectQuery_EntitySqlExtensions.cs
- UnionCodeGroup.cs
- ImportContext.cs
- WmlTextBoxAdapter.cs
- XPathDocumentNavigator.cs
- PassportAuthenticationEventArgs.cs
- Border.cs
- wgx_sdk_version.cs
- Dictionary.cs
- HttpCachePolicy.cs
- AssertUtility.cs
- DataGridViewCheckBoxColumn.cs
- TypeNameConverter.cs
- COM2IProvidePropertyBuilderHandler.cs
- ImageResources.Designer.cs
- DefaultObjectMappingItemCollection.cs
- CdpEqualityComparer.cs
- ApplicationBuildProvider.cs
- Label.cs
- ALinqExpressionVisitor.cs
- WeakReference.cs
- QueryConverter.cs
- _UncName.cs
- GroupItem.cs
- PageVisual.cs
- WindowInteractionStateTracker.cs
- MediaPlayerState.cs
- EntitySqlQueryState.cs
- MembershipUser.cs
- ProcessModule.cs
- Facet.cs
- SqlRecordBuffer.cs
- TemplateBamlTreeBuilder.cs
- invalidudtexception.cs
- InfoCardBaseException.cs
- QuaternionAnimation.cs
- NonSerializedAttribute.cs
- EnumConverter.cs
- OleDbConnectionInternal.cs
- XPathPatternBuilder.cs
- ValidationRule.cs
- QueueProcessor.cs
- NameNode.cs
- TableLayoutPanelCodeDomSerializer.cs
- ListCollectionView.cs
- PipelineModuleStepContainer.cs
- ILGenerator.cs
- SystemIcmpV4Statistics.cs
- FormViewRow.cs
- TrackingProfileCache.cs
- AuthenticateEventArgs.cs
- QilSortKey.cs
- DocumentReferenceCollection.cs
- PartitionResolver.cs
- ClientSettingsSection.cs
- DbException.cs
- Hash.cs
- ListBoxItemAutomationPeer.cs
- ScrollChangedEventArgs.cs
- KeyFrames.cs
- OpacityConverter.cs
- localization.cs
- SafeHandle.cs
- ObjectView.cs
- ConcurrentQueue.cs
- AuthenticationModuleElementCollection.cs
- ManipulationCompletedEventArgs.cs
- ObjectDataSourceDisposingEventArgs.cs
- _FtpControlStream.cs
- ToolbarAUtomationPeer.cs
- dataprotectionpermissionattribute.cs
- path.cs
- XmlAutoDetectWriter.cs
- StrongNameMembershipCondition.cs
- _PooledStream.cs
- XpsException.cs
- ObjectListComponentEditor.cs
- ReceiveCompletedEventArgs.cs
- Normalization.cs
- SqlStatistics.cs
- ValidatorCompatibilityHelper.cs
- ParallelRangeManager.cs
- DiscoveryReference.cs
- __FastResourceComparer.cs
- NetworkInformationPermission.cs
- SqlBulkCopyColumnMappingCollection.cs
- LinqDataSourceContextEventArgs.cs
- PageBuildProvider.cs
- Html32TextWriter.cs
- cookiecontainer.cs
- FloatUtil.cs
- RenderCapability.cs
- AnonymousIdentificationModule.cs
- MonitorWrapper.cs