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
- SvcMapFileSerializer.cs
- HasCopySemanticsAttribute.cs
- ComEventsSink.cs
- DynamicRendererThreadManager.cs
- JsonDeserializer.cs
- SoapInteropTypes.cs
- SecurityUtils.cs
- SelectorItemAutomationPeer.cs
- WebPartEditorApplyVerb.cs
- ClassValidator.cs
- ExtractedStateEntry.cs
- SessionStateItemCollection.cs
- ZipIOExtraFieldPaddingElement.cs
- CompositionTarget.cs
- MailHeaderInfo.cs
- ProxyWebPartManagerDesigner.cs
- NetTcpSecurity.cs
- RenderOptions.cs
- DeflateStream.cs
- SuppressMergeCheckAttribute.cs
- RouteParameter.cs
- Hex.cs
- Label.cs
- TypeDelegator.cs
- ClickablePoint.cs
- ErrorActivity.cs
- sqlcontext.cs
- BulletedListEventArgs.cs
- MultiDataTrigger.cs
- StubHelpers.cs
- DataServiceOperationContext.cs
- ReversePositionQuery.cs
- SparseMemoryStream.cs
- ControlPropertyNameConverter.cs
- BridgeDataReader.cs
- MonthChangedEventArgs.cs
- VisualStyleTypesAndProperties.cs
- X509Certificate2Collection.cs
- MetadataFile.cs
- RequestCacheEntry.cs
- RC2CryptoServiceProvider.cs
- ZipIOCentralDirectoryBlock.cs
- MenuEventArgs.cs
- Scene3D.cs
- AttributeProviderAttribute.cs
- DetailsViewUpdateEventArgs.cs
- AbandonedMutexException.cs
- XmlSchemaAnnotation.cs
- Convert.cs
- SqlBulkCopy.cs
- Timeline.cs
- HtmlGenericControl.cs
- PropertyDescriptors.cs
- CmsInterop.cs
- SystemIPAddressInformation.cs
- FloatUtil.cs
- CqlParserHelpers.cs
- ColumnWidthChangingEvent.cs
- Vector3DCollection.cs
- XmlSchemaSet.cs
- COAUTHIDENTITY.cs
- RoleService.cs
- FixedDocumentSequencePaginator.cs
- EntitySetRetriever.cs
- Soap12ProtocolReflector.cs
- TextSelectionProcessor.cs
- FlowLayout.cs
- Int64KeyFrameCollection.cs
- VersionPair.cs
- SerialPort.cs
- ProfileSection.cs
- XmlDomTextWriter.cs
- MenuRendererClassic.cs
- ToolBarButtonClickEvent.cs
- TabletDeviceInfo.cs
- HitTestWithPointDrawingContextWalker.cs
- TextTreeUndo.cs
- XmlSerializerObjectSerializer.cs
- ControlType.cs
- MetadataItem.cs
- KeyManager.cs
- BaseTemplateParser.cs
- AccessedThroughPropertyAttribute.cs
- DataGridTablesFactory.cs
- SafeNativeMethods.cs
- Atom10FormatterFactory.cs
- VisemeEventArgs.cs
- SetIterators.cs
- ReturnValue.cs
- NullableIntAverageAggregationOperator.cs
- WebPartDeleteVerb.cs
- EventListener.cs
- IntPtr.cs
- PropVariant.cs
- XmlSchemaDatatype.cs
- ServiceHttpModule.cs
- ButtonStandardAdapter.cs
- SByte.cs
- TextChange.cs
- OracleString.cs