Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- TextTreeNode.cs
- DragDeltaEventArgs.cs
- CroppedBitmap.cs
- MeasureData.cs
- AttachmentService.cs
- BitmapMetadataEnumerator.cs
- WorkflowService.cs
- EditingScopeUndoUnit.cs
- FixedHyperLink.cs
- ListView.cs
- ConstructorBuilder.cs
- HttpRuntime.cs
- PropertyCollection.cs
- FlowLayoutSettings.cs
- UriScheme.cs
- LayoutDump.cs
- ToolboxComponentsCreatingEventArgs.cs
- OperationContractGenerationContext.cs
- ModifierKeysValueSerializer.cs
- ColorAnimationUsingKeyFrames.cs
- RenamedEventArgs.cs
- MissingSatelliteAssemblyException.cs
- SmtpNetworkElement.cs
- BitmapScalingModeValidation.cs
- TransportationConfigurationTypeInstallComponent.cs
- FirstMatchCodeGroup.cs
- PageCodeDomTreeGenerator.cs
- SizeLimitedCache.cs
- NodeInfo.cs
- HitTestParameters3D.cs
- DirectoryObjectSecurity.cs
- ProxyHwnd.cs
- Activator.cs
- DrawingGroup.cs
- AggregateException.cs
- XmlUtf8RawTextWriter.cs
- MimeTypeAttribute.cs
- DbProviderConfigurationHandler.cs
- BamlRecordWriter.cs
- ActiveDocumentEvent.cs
- ApplicationServicesHostFactory.cs
- ExternalFile.cs
- DesignTimeData.cs
- TransactionFlowBindingElement.cs
- WizardStepBase.cs
- DataObject.cs
- Memoizer.cs
- DropShadowBitmapEffect.cs
- EventKeyword.cs
- HttpException.cs
- ArcSegment.cs
- Axis.cs
- NullNotAllowedCollection.cs
- XmlIncludeAttribute.cs
- TableAdapterManagerGenerator.cs
- HwndHost.cs
- XamlStyleSerializer.cs
- XPathDescendantIterator.cs
- TextOnlyOutput.cs
- HatchBrush.cs
- DataRelation.cs
- HttpProcessUtility.cs
- AccessDataSource.cs
- ClientSession.cs
- WindowsStatic.cs
- ColumnResizeAdorner.cs
- KnownBoxes.cs
- AmbientEnvironment.cs
- TempFiles.cs
- _FtpControlStream.cs
- Automation.cs
- contentDescriptor.cs
- SecUtil.cs
- cryptoapiTransform.cs
- ConstraintCollection.cs
- WindowsEditBox.cs
- RegisteredHiddenField.cs
- EntitySet.cs
- DecimalConverter.cs
- RegexRunner.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- ColorAnimationUsingKeyFrames.cs
- BamlResourceDeserializer.cs
- ToolStripItemImageRenderEventArgs.cs
- RemoteAsymmetricSignatureFormatter.cs
- LongSumAggregationOperator.cs
- PlatformCulture.cs
- PropertyInformationCollection.cs
- SettingsPropertyCollection.cs
- CollectionBase.cs
- SrgsDocumentParser.cs
- WindowAutomationPeer.cs
- ConsoleCancelEventArgs.cs
- CheckBoxRenderer.cs
- SHA1.cs
- XmlSerializationWriter.cs
- DynamicValueConverter.cs
- Crc32.cs
- WebPartZoneCollection.cs
- DocumentApplication.cs