Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Collections / Concurrent / CDSCollectionETWBCLProvider.cs / 1305376 / CDSCollectionETWBCLProvider.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // CDSETWProvider.cs // //[....] // // A helper class for firing ETW events related to the Coordination Data Structure Collections. // // This provider is used by CDS collection primitives in both mscorlib.dll and system.dll. The purpose of sharing // the provider class is to be able to enable ETW tracing on all CDS collection types with a single ETW provider GUID. // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System; using System.Collections.Generic; using System.Text; namespace System.Collections.Concurrent { #if !FEATURE_PAL // PAL doesn't support eventing using System.Diagnostics.Eventing; [System.Runtime.CompilerServices.FriendAccessAllowed] sealed internal class CDSCollectionETWBCLProvider : EventProviderBase { // // Defines the singleton instance for the CDS ETW provider // // The CDS collection Event provider GUID is {35167F8E-49B2-4b96-AB86-435B59336B5E} // public static CDSCollectionETWBCLProvider Log = new CDSCollectionETWBCLProvider(); private CDSCollectionETWBCLProvider() : base(new Guid(0x35167f8e, 0x49b2, 0x4b96, 0xab, 0x86, 0x43, 0x5b, 0x59, 0x33, 0x6b, 0x5e)) { } ///////////////////////////////////////////////////////////////////////////////////// // // ConcurrentStack Events // [Event(1, Level = EventLevel.LogAlways)] public void ConcurrentStack_FastPushFailed(int spinCount) { if (IsEnabled()) WriteEvent(1,spinCount); } [Event(2, Level = EventLevel.LogAlways)] public void ConcurrentStack_FastPopFailed(int spinCount) { if (IsEnabled()) WriteEvent(2,spinCount); } ///////////////////////////////////////////////////////////////////////////////////// // // ConcurrentDictionary Events // [Event(3, Level = EventLevel.LogAlways)] public void ConcurrentDictionary_AcquiringAllLocks(int numOfBuckets) { if (IsEnabled()) WriteEvent(3, numOfBuckets); } // // Events below this point are used by the CDS types in System.DLL // ///////////////////////////////////////////////////////////////////////////////////// // // ConcurrentBag Events // [Event(4, Level = EventLevel.Verbose)] public void ConcurrentBag_TryTakeSteals() { if (IsEnabled(EventLevel.Verbose, ((EventKeywords)(-1)) )) WriteEvent(4); } [Event(5, Level = EventLevel.Verbose)] public void ConcurrentBag_TryPeekSteals() { if (IsEnabled(EventLevel.Verbose, ((EventKeywords)(-1)) )) WriteEvent(5); } } #endif // !FEATURE_PAL } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // CDSETWProvider.cs // //[....] // // A helper class for firing ETW events related to the Coordination Data Structure Collections. // // This provider is used by CDS collection primitives in both mscorlib.dll and system.dll. The purpose of sharing // the provider class is to be able to enable ETW tracing on all CDS collection types with a single ETW provider GUID. // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System; using System.Collections.Generic; using System.Text; namespace System.Collections.Concurrent { #if !FEATURE_PAL // PAL doesn't support eventing using System.Diagnostics.Eventing; [System.Runtime.CompilerServices.FriendAccessAllowed] sealed internal class CDSCollectionETWBCLProvider : EventProviderBase { // // Defines the singleton instance for the CDS ETW provider // // The CDS collection Event provider GUID is {35167F8E-49B2-4b96-AB86-435B59336B5E} // public static CDSCollectionETWBCLProvider Log = new CDSCollectionETWBCLProvider(); private CDSCollectionETWBCLProvider() : base(new Guid(0x35167f8e, 0x49b2, 0x4b96, 0xab, 0x86, 0x43, 0x5b, 0x59, 0x33, 0x6b, 0x5e)) { } ///////////////////////////////////////////////////////////////////////////////////// // // ConcurrentStack Events // [Event(1, Level = EventLevel.LogAlways)] public void ConcurrentStack_FastPushFailed(int spinCount) { if (IsEnabled()) WriteEvent(1,spinCount); } [Event(2, Level = EventLevel.LogAlways)] public void ConcurrentStack_FastPopFailed(int spinCount) { if (IsEnabled()) WriteEvent(2,spinCount); } ///////////////////////////////////////////////////////////////////////////////////// // // ConcurrentDictionary Events // [Event(3, Level = EventLevel.LogAlways)] public void ConcurrentDictionary_AcquiringAllLocks(int numOfBuckets) { if (IsEnabled()) WriteEvent(3, numOfBuckets); } // // Events below this point are used by the CDS types in System.DLL // ///////////////////////////////////////////////////////////////////////////////////// // // ConcurrentBag Events // [Event(4, Level = EventLevel.Verbose)] public void ConcurrentBag_TryTakeSteals() { if (IsEnabled(EventLevel.Verbose, ((EventKeywords)(-1)) )) WriteEvent(4); } [Event(5, Level = EventLevel.Verbose)] public void ConcurrentBag_TryPeekSteals() { if (IsEnabled(EventLevel.Verbose, ((EventKeywords)(-1)) )) WriteEvent(5); } } #endif // !FEATURE_PAL } // 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
- AsyncStreamReader.cs
- PrintPreviewControl.cs
- SQLBytesStorage.cs
- SR.Designer.cs
- AnimationTimeline.cs
- PolyBezierSegment.cs
- MobileControlDesigner.cs
- CodeArrayIndexerExpression.cs
- FieldNameLookup.cs
- WebServiceErrorEvent.cs
- DotExpr.cs
- MatrixAnimationUsingPath.cs
- ResourceDictionary.cs
- GatewayIPAddressInformationCollection.cs
- SafeFileMappingHandle.cs
- ChangeBlockUndoRecord.cs
- AssemblyAssociatedContentFileAttribute.cs
- ProtocolsConfigurationHandler.cs
- IUnknownConstantAttribute.cs
- ReliabilityContractAttribute.cs
- MarshalByRefObject.cs
- TypeForwardedToAttribute.cs
- IgnoreSectionHandler.cs
- DataGridViewAccessibleObject.cs
- InstanceDataCollectionCollection.cs
- _NestedSingleAsyncResult.cs
- DesigntimeLicenseContext.cs
- CollectionBuilder.cs
- Grant.cs
- TypeReference.cs
- SimpleApplicationHost.cs
- Privilege.cs
- DrawingImage.cs
- BamlTreeNode.cs
- TableSectionStyle.cs
- MsmqInputMessage.cs
- SqlCacheDependencySection.cs
- SqlExpander.cs
- DbProviderManifest.cs
- Delegate.cs
- DataGridColumnCollection.cs
- DataGridTextBox.cs
- ObjectPersistData.cs
- CachedBitmap.cs
- AliasGenerator.cs
- TextRangeProviderWrapper.cs
- CacheSection.cs
- unsafenativemethodsother.cs
- RowUpdatedEventArgs.cs
- StretchValidation.cs
- CmsUtils.cs
- DrawingContext.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- Message.cs
- AutomationPeer.cs
- Compiler.cs
- StorageSetMapping.cs
- DefaultWorkflowSchedulerService.cs
- RichTextBoxDesigner.cs
- VectorCollectionConverter.cs
- RawStylusInputReport.cs
- WebPartTransformerCollection.cs
- XamlTypeMapper.cs
- Queue.cs
- NegotiationTokenAuthenticatorStateCache.cs
- SymmetricAlgorithm.cs
- ReflectionTypeLoadException.cs
- BinaryWriter.cs
- DocumentXPathNavigator.cs
- Control.cs
- StorageConditionPropertyMapping.cs
- Scene3D.cs
- DropShadowBitmapEffect.cs
- CategoryAttribute.cs
- SiteMapDataSource.cs
- ParagraphResult.cs
- TargetParameterCountException.cs
- PerspectiveCamera.cs
- StringToken.cs
- AnimationLayer.cs
- SqlRewriteScalarSubqueries.cs
- WebPartTransformerAttribute.cs
- X509Certificate2Collection.cs
- GB18030Encoding.cs
- controlskin.cs
- CacheForPrimitiveTypes.cs
- LocalizationParserHooks.cs
- BatchStream.cs
- CachedTypeface.cs
- HostingEnvironmentException.cs
- XmlIgnoreAttribute.cs
- ErrorLog.cs
- ToolStripControlHost.cs
- ResourceContainer.cs
- SqlDataRecord.cs
- DbException.cs
- ContractCodeDomInfo.cs
- WindowsTreeView.cs
- PageRouteHandler.cs
- RuleSettings.cs