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
- FontEmbeddingManager.cs
- ScrollViewerAutomationPeer.cs
- TopClause.cs
- SqlDependency.cs
- DateTimeFormat.cs
- ClipboardProcessor.cs
- ArrangedElement.cs
- DiscoveryInnerClientManaged11.cs
- XmlNamedNodeMap.cs
- SplashScreenNativeMethods.cs
- BamlReader.cs
- BulletedList.cs
- CircleHotSpot.cs
- IDictionary.cs
- DateTimeFormat.cs
- PartitionedStreamMerger.cs
- UnknownWrapper.cs
- ValidationError.cs
- AssemblyCollection.cs
- ProtocolsConfigurationHandler.cs
- Function.cs
- ZipIOLocalFileDataDescriptor.cs
- BindableTemplateBuilder.cs
- ValueSerializer.cs
- ClientConfigurationHost.cs
- SnapLine.cs
- ISAPIApplicationHost.cs
- TemplateKeyConverter.cs
- ToolBarPanel.cs
- ConfigXmlSignificantWhitespace.cs
- ItemCheckEvent.cs
- XamlPointCollectionSerializer.cs
- WebGetAttribute.cs
- SizeAnimationBase.cs
- ClientOptions.cs
- QueryOpeningEnumerator.cs
- FreezableOperations.cs
- AnonymousIdentificationModule.cs
- SaveFileDialog.cs
- CompoundFileReference.cs
- BorderGapMaskConverter.cs
- EntityDataSource.cs
- RuleSetDialog.Designer.cs
- StreamGeometryContext.cs
- ConnectivityStatus.cs
- SoapDocumentMethodAttribute.cs
- PoisonMessageException.cs
- SplitterCancelEvent.cs
- SubtreeProcessor.cs
- COM2EnumConverter.cs
- DateRangeEvent.cs
- XmlSerializerAssemblyAttribute.cs
- _Win32.cs
- WebEvents.cs
- PrimitiveOperationFormatter.cs
- ToolBar.cs
- FindCriteria.cs
- EntryPointNotFoundException.cs
- RequestFactory.cs
- DatagridviewDisplayedBandsData.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- SafeNativeMethods.cs
- PrintPreviewControl.cs
- StrokeCollectionConverter.cs
- XmlSchemaAppInfo.cs
- ZoneLinkButton.cs
- HtmlInputHidden.cs
- CharacterBufferReference.cs
- CollectionCodeDomSerializer.cs
- TableLayoutRowStyleCollection.cs
- ExpressionNode.cs
- EntityCommandDefinition.cs
- DataTableNewRowEvent.cs
- AlgoModule.cs
- OneOf.cs
- CqlParser.cs
- _WinHttpWebProxyDataBuilder.cs
- XmlDocumentType.cs
- WindowsStartMenu.cs
- HtmlGenericControl.cs
- Context.cs
- SystemWebExtensionsSectionGroup.cs
- InputQueueChannel.cs
- TypeForwardedToAttribute.cs
- ScriptReferenceEventArgs.cs
- ImageClickEventArgs.cs
- ObfuscationAttribute.cs
- FixedPageAutomationPeer.cs
- IdleTimeoutMonitor.cs
- DetailsViewPagerRow.cs
- Column.cs
- OutputCacheModule.cs
- NumericPagerField.cs
- GenerateTemporaryTargetAssembly.cs
- JavascriptCallbackMessageInspector.cs
- ReferenceEqualityComparer.cs
- XamlPointCollectionSerializer.cs
- CodeAccessSecurityEngine.cs
- Style.cs
- ObjectConverter.cs