Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / SMDiagnostics / System / ServiceModel / Diagnostics / Utility.cs / 1305376 / Utility.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Diagnostics { using System.Runtime; using System.Runtime.CompilerServices; using System.Runtime.ConstrainedExecution; using System.Diagnostics; using System.Threading; using System.Runtime.InteropServices; using System.Security; using System.Security.Permissions; using System.Diagnostics.CodeAnalysis; class Utility { ExceptionUtility exceptionUtility; [Obsolete("For SMDiagnostics.dll use only. Call DiagnosticUtility.Utility instead")] internal Utility(ExceptionUtility exceptionUtility) { this.exceptionUtility = exceptionUtility; } // Call this when a p/invoke with an 'out SafeHandle' parameter returns an error. This will safely clean up the handle. internal static void CloseInvalidOutSafeHandle(SafeHandle handle) { // Workaround for 64-bit CLR bug VSWhidbey 546830 - sometimes invalid SafeHandles come back null. if (handle != null) { #pragma warning disable 618 AssertUtility.DebugAssert(handle.IsInvalid, "CloseInvalidOutSafeHandle called with a valid handle!"); #pragma warning restore 618 // Calls SuppressFinalize. handle.SetHandleAsInvalid(); } } // Copy of the above for CriticalHandles. internal static void CloseInvalidOutCriticalHandle(CriticalHandle handle) { if (handle != null) { #pragma warning disable 618 AssertUtility.DebugAssert(handle.IsInvalid, "CloseInvalidOutCriticalHandle called with a valid handle!"); #pragma warning restore 618 handle.SetHandleAsInvalid(); } } internal Guid CreateGuid(string guidString) { return Fx.CreateGuid(guidString); } internal bool TryCreateGuid(string guidString, out Guid result) { return Fx.TryCreateGuid(guidString, out result); } internal byte[] AllocateByteArray(int size) { return Fx.AllocateByteArray(size); } internal char[] AllocateCharArray(int size) { return Fx.AllocateCharArray(size); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Diagnostics { using System.Runtime; using System.Runtime.CompilerServices; using System.Runtime.ConstrainedExecution; using System.Diagnostics; using System.Threading; using System.Runtime.InteropServices; using System.Security; using System.Security.Permissions; using System.Diagnostics.CodeAnalysis; class Utility { ExceptionUtility exceptionUtility; [Obsolete("For SMDiagnostics.dll use only. Call DiagnosticUtility.Utility instead")] internal Utility(ExceptionUtility exceptionUtility) { this.exceptionUtility = exceptionUtility; } // Call this when a p/invoke with an 'out SafeHandle' parameter returns an error. This will safely clean up the handle. internal static void CloseInvalidOutSafeHandle(SafeHandle handle) { // Workaround for 64-bit CLR bug VSWhidbey 546830 - sometimes invalid SafeHandles come back null. if (handle != null) { #pragma warning disable 618 AssertUtility.DebugAssert(handle.IsInvalid, "CloseInvalidOutSafeHandle called with a valid handle!"); #pragma warning restore 618 // Calls SuppressFinalize. handle.SetHandleAsInvalid(); } } // Copy of the above for CriticalHandles. internal static void CloseInvalidOutCriticalHandle(CriticalHandle handle) { if (handle != null) { #pragma warning disable 618 AssertUtility.DebugAssert(handle.IsInvalid, "CloseInvalidOutCriticalHandle called with a valid handle!"); #pragma warning restore 618 handle.SetHandleAsInvalid(); } } internal Guid CreateGuid(string guidString) { return Fx.CreateGuid(guidString); } internal bool TryCreateGuid(string guidString, out Guid result) { return Fx.TryCreateGuid(guidString, out result); } internal byte[] AllocateByteArray(int size) { return Fx.AllocateByteArray(size); } internal char[] AllocateCharArray(int size) { return Fx.AllocateCharArray(size); } } } // 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
- SqlError.cs
- Rotation3DAnimationUsingKeyFrames.cs
- StrongNameMembershipCondition.cs
- DataGridPagingPage.cs
- StaticFileHandler.cs
- AutomationIdentifier.cs
- SessionStateItemCollection.cs
- CompensationHandlingFilter.cs
- VisualProxy.cs
- RectKeyFrameCollection.cs
- DetailsViewCommandEventArgs.cs
- IgnoreFileBuildProvider.cs
- BitmapEffectDrawingContextWalker.cs
- ExpressionBuilder.cs
- ApplicationFileCodeDomTreeGenerator.cs
- ResXResourceReader.cs
- ZoneIdentityPermission.cs
- ToolBar.cs
- StyleTypedPropertyAttribute.cs
- VariantWrapper.cs
- FrameDimension.cs
- TextElementCollection.cs
- SqlDataRecord.cs
- InteropExecutor.cs
- ResizeGrip.cs
- WebPartCatalogAddVerb.cs
- MsmqIntegrationMessageProperty.cs
- AsynchronousChannel.cs
- LogRecordSequence.cs
- PerformanceCountersBase.cs
- ConfigurationFileMap.cs
- SqlCacheDependencyDatabaseCollection.cs
- WebErrorHandler.cs
- LicenseProviderAttribute.cs
- Event.cs
- VirtualDirectoryMapping.cs
- SerializationInfo.cs
- CultureInfo.cs
- FixedTextPointer.cs
- ConnectionProviderAttribute.cs
- HostExecutionContextManager.cs
- nulltextcontainer.cs
- X509ChainElement.cs
- KnowledgeBase.cs
- SpellerStatusTable.cs
- SupportsEventValidationAttribute.cs
- SmuggledIUnknown.cs
- ObjectItemNoOpAssemblyLoader.cs
- _RegBlobWebProxyDataBuilder.cs
- UriGenerator.cs
- TextServicesHost.cs
- Activator.cs
- ObjectDataSourceFilteringEventArgs.cs
- CacheAxisQuery.cs
- ShapeTypeface.cs
- MetadataStore.cs
- FormViewDeleteEventArgs.cs
- SqlUtil.cs
- EmbeddedMailObjectsCollection.cs
- TextElementCollectionHelper.cs
- Drawing.cs
- UrlPath.cs
- ReservationNotFoundException.cs
- WebPartConnectionsCancelVerb.cs
- ObjectContext.cs
- EntityObject.cs
- QilXmlWriter.cs
- DesignerTransaction.cs
- AtomPub10CategoriesDocumentFormatter.cs
- RecommendedAsConfigurableAttribute.cs
- CheckBoxBaseAdapter.cs
- EventLogPermission.cs
- ButtonBase.cs
- MSAAWinEventWrap.cs
- TransformConverter.cs
- SqlConnectionFactory.cs
- SqlInfoMessageEvent.cs
- Literal.cs
- VoiceInfo.cs
- DiscoveryOperationContextExtension.cs
- RequestQueue.cs
- AutomationAttributeInfo.cs
- PerformanceCounterLib.cs
- LocationInfo.cs
- ServiceProviders.cs
- TextDataBindingHandler.cs
- TableProviderWrapper.cs
- Rules.cs
- TreeNode.cs
- basenumberconverter.cs
- GroupItem.cs
- GroupQuery.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- ObjectStateManager.cs
- UriParserTemplates.cs
- MruCache.cs
- DataStreams.cs
- XmlIlVisitor.cs
- BitmapEffectInput.cs
- PageBreakRecord.cs