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
- DebugControllerThread.cs
- XmlUtil.cs
- CompilerErrorCollection.cs
- PermissionSetEnumerator.cs
- Membership.cs
- CopyAttributesAction.cs
- ThreadPool.cs
- ComplexTypeEmitter.cs
- JsonFormatReaderGenerator.cs
- EventRoute.cs
- HandlerElementCollection.cs
- FileVersionInfo.cs
- QilList.cs
- UIElementHelper.cs
- Cloud.cs
- GridViewDeleteEventArgs.cs
- CaseInsensitiveHashCodeProvider.cs
- QueryCoreOp.cs
- ExceptionAggregator.cs
- ObjectListSelectEventArgs.cs
- StaticTextPointer.cs
- Brush.cs
- ColumnPropertiesGroup.cs
- LogicalTreeHelper.cs
- BindableTemplateBuilder.cs
- TcpChannelListener.cs
- Renderer.cs
- AsyncResult.cs
- DrawingVisualDrawingContext.cs
- adornercollection.cs
- MatrixConverter.cs
- CultureMapper.cs
- SqlConnectionPoolProviderInfo.cs
- WebCodeGenerator.cs
- PixelFormat.cs
- XmlQueryCardinality.cs
- WebPartAddingEventArgs.cs
- XamlReader.cs
- StyleReferenceConverter.cs
- MarshalByValueComponent.cs
- ToolStripSettings.cs
- KeyValuePairs.cs
- LogExtentCollection.cs
- IncrementalReadDecoders.cs
- DotNetATv1WindowsLogEntrySerializer.cs
- TextEditorCharacters.cs
- ToolStripSeparator.cs
- PolygonHotSpot.cs
- RegularExpressionValidator.cs
- TransformPattern.cs
- Comparer.cs
- MultipartContentParser.cs
- FormClosedEvent.cs
- DefaultShape.cs
- ConnectionManagementElement.cs
- DefaultMemberAttribute.cs
- CodeTypeDelegate.cs
- ActivityInstanceReference.cs
- WorkflowQueuingService.cs
- TabPage.cs
- RepeaterCommandEventArgs.cs
- TextBreakpoint.cs
- XmlCountingReader.cs
- XmlNodeReader.cs
- LoginCancelEventArgs.cs
- StringReader.cs
- SqlGatherProducedAliases.cs
- ObjectDataSource.cs
- Cursor.cs
- DispatcherExceptionEventArgs.cs
- ItemList.cs
- EdgeProfileValidation.cs
- CellParaClient.cs
- Menu.cs
- DescendantQuery.cs
- EntityViewGenerationAttribute.cs
- StrokeNodeData.cs
- UnauthorizedWebPart.cs
- StructureChangedEventArgs.cs
- CryptoStream.cs
- XhtmlBasicLiteralTextAdapter.cs
- ConfigXmlCDataSection.cs
- CodeEventReferenceExpression.cs
- SecurityHeaderLayout.cs
- FixedDocumentPaginator.cs
- DoubleCollectionConverter.cs
- TaskFileService.cs
- Symbol.cs
- ServiceBusyException.cs
- DataGridViewAddColumnDialog.cs
- ItemsControlAutomationPeer.cs
- EncryptedReference.cs
- BeginEvent.cs
- ObjectPropertyMapping.cs
- DateTimeOffset.cs
- SByteConverter.cs
- Permission.cs
- WindowsTab.cs
- XsltArgumentList.cs
- ColorAnimationUsingKeyFrames.cs