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
- CodeAccessPermission.cs
- ObjectAnimationBase.cs
- InvalidateEvent.cs
- IisTraceListener.cs
- AsyncDataRequest.cs
- WpfXamlType.cs
- XPathPatternBuilder.cs
- NameScope.cs
- IndexedGlyphRun.cs
- SystemIPv6InterfaceProperties.cs
- Certificate.cs
- SerializationSectionGroup.cs
- ScriptResourceDefinition.cs
- ExceptionHandler.cs
- Int32AnimationBase.cs
- FilteredSchemaElementLookUpTable.cs
- GridViewUpdateEventArgs.cs
- WebPartConnection.cs
- TargetException.cs
- CustomAttribute.cs
- XmlDownloadManager.cs
- ProjectionCamera.cs
- Run.cs
- Wildcard.cs
- ToolStripContentPanelDesigner.cs
- ToolStripMenuItem.cs
- WeakRefEnumerator.cs
- QueryCacheManager.cs
- MetadataElement.cs
- xdrvalidator.cs
- LinkClickEvent.cs
- Environment.cs
- TableItemStyle.cs
- AddingNewEventArgs.cs
- CodeMemberProperty.cs
- SafeNativeMethodsCLR.cs
- LongValidator.cs
- SelectorItemAutomationPeer.cs
- SynchronizedDispatch.cs
- CreateParams.cs
- UnaryNode.cs
- IgnoreSection.cs
- ToolStripDropTargetManager.cs
- ConcurrentBag.cs
- ZipIOCentralDirectoryBlock.cs
- SqlDataReaderSmi.cs
- ServiceOperationInfoTypeConverter.cs
- CompModSwitches.cs
- WebPartConnectionsConfigureVerb.cs
- OptimalBreakSession.cs
- RegistryKey.cs
- DataGridViewLayoutData.cs
- StandardMenuStripVerb.cs
- ServiceContractListItem.cs
- CheckableControlBaseAdapter.cs
- DataTableMapping.cs
- ObjectDataSource.cs
- ExpressionParser.cs
- VisualStyleInformation.cs
- DataComponentNameHandler.cs
- EventLogEntry.cs
- ScriptManager.cs
- CompilerCollection.cs
- MsmqAppDomainProtocolHandler.cs
- Annotation.cs
- ElementUtil.cs
- TemplatePagerField.cs
- TextEditorParagraphs.cs
- ControlAdapter.cs
- CookielessHelper.cs
- RequestContext.cs
- TypefaceCollection.cs
- TypeDelegator.cs
- processwaithandle.cs
- EdgeProfileValidation.cs
- ThousandthOfEmRealDoubles.cs
- HostedNamedPipeTransportManager.cs
- DataStreamFromComStream.cs
- ExtendedProtectionPolicyTypeConverter.cs
- DataControlFieldCell.cs
- TextEditorTables.cs
- CustomValidator.cs
- HuffModule.cs
- FullTextBreakpoint.cs
- ObjectListCommandEventArgs.cs
- TreePrinter.cs
- ObjectHelper.cs
- AutoSizeToolBoxItem.cs
- ListViewTableCell.cs
- AuthenticateEventArgs.cs
- Module.cs
- HtmlContainerControl.cs
- ThreadAbortException.cs
- BaseDataBoundControl.cs
- safePerfProviderHandle.cs
- StyleSelector.cs
- smtppermission.cs
- UnmanagedMemoryStream.cs
- EntityType.cs
- UnSafeCharBuffer.cs