Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / Microsoft / Win32 / SafeHandles / SafeWaitHandle.cs / 2 / 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);
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ContainerParaClient.cs
- _DomainName.cs
- HtmlMeta.cs
- DayRenderEvent.cs
- FolderNameEditor.cs
- XmlChildNodes.cs
- CollectionConverter.cs
- ColorTransform.cs
- ExpressionLink.cs
- XmlCountingReader.cs
- Label.cs
- MenuItem.cs
- MenuItemBindingCollection.cs
- DoubleAnimationUsingKeyFrames.cs
- DataGridViewEditingControlShowingEventArgs.cs
- ApplicationHost.cs
- TypeConverterHelper.cs
- NavigationEventArgs.cs
- RectKeyFrameCollection.cs
- HelpProvider.cs
- MonitorWrapper.cs
- PointLightBase.cs
- EUCJPEncoding.cs
- WebPartDisplayModeEventArgs.cs
- BrowserCapabilitiesCompiler.cs
- XmlSchemaGroup.cs
- ContractMapping.cs
- SqlTransaction.cs
- HwndTarget.cs
- RestHandler.cs
- NamespaceInfo.cs
- ExceptionRoutedEventArgs.cs
- AtomParser.cs
- WindowsRebar.cs
- Debug.cs
- SafeNativeMethods.cs
- TrackingWorkflowEventArgs.cs
- XmlText.cs
- EventSinkHelperWriter.cs
- XmlSchemaDocumentation.cs
- FormatControl.cs
- Trace.cs
- Window.cs
- HttpsHostedTransportConfiguration.cs
- ScriptComponentDescriptor.cs
- DelegateTypeInfo.cs
- HttpHandlersInstallComponent.cs
- InputLanguageProfileNotifySink.cs
- ClientApiGenerator.cs
- CodeArgumentReferenceExpression.cs
- ServiceModelTimeSpanValidator.cs
- DetailsViewModeEventArgs.cs
- UnicastIPAddressInformationCollection.cs
- TextEncodedRawTextWriter.cs
- HttpClientCertificate.cs
- AsymmetricCryptoHandle.cs
- ConnectorSelectionGlyph.cs
- SerializationStore.cs
- ProcessThreadCollection.cs
- LogicalExpr.cs
- FormViewModeEventArgs.cs
- PageAsyncTaskManager.cs
- DSASignatureDeformatter.cs
- BaseResourcesBuildProvider.cs
- DefaultValueAttribute.cs
- AuthorizationPolicyTypeElementCollection.cs
- ColumnCollection.cs
- Root.cs
- SqlCacheDependency.cs
- WindowsProgressbar.cs
- MetadataArtifactLoaderFile.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- OutputCacheProfile.cs
- Variable.cs
- MenuRenderer.cs
- InvalidPropValue.cs
- HtmlGenericControl.cs
- CollectionBase.cs
- ResolvedKeyFrameEntry.cs
- HGlobalSafeHandle.cs
- DataTableNewRowEvent.cs
- CapabilitiesAssignment.cs
- DeferredReference.cs
- CodeMemberField.cs
- RepeaterCommandEventArgs.cs
- AVElementHelper.cs
- CodeTypeConstructor.cs
- DataGridViewComboBoxCell.cs
- TickBar.cs
- CodeBinaryOperatorExpression.cs
- StreamGeometryContext.cs
- BitmapFrame.cs
- DeflateStream.cs
- DbReferenceCollection.cs
- SortDescription.cs
- ConfigXmlAttribute.cs
- CubicEase.cs
- OneToOneMappingSerializer.cs
- SearchForVirtualItemEventArgs.cs
- RecognitionResult.cs