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
- TreeViewImageIndexConverter.cs
- SystemUdpStatistics.cs
- XmlSchemaType.cs
- ValuePattern.cs
- FilterQueryOptionExpression.cs
- ActivationServices.cs
- ApplicationInterop.cs
- Codec.cs
- VisualStyleInformation.cs
- DataGridViewImageColumn.cs
- DataSet.cs
- AsyncOperation.cs
- DbLambda.cs
- VectorValueSerializer.cs
- SignedXml.cs
- ItemsChangedEventArgs.cs
- ChoiceConverter.cs
- LocationReferenceValue.cs
- MemberPath.cs
- XmlSerializationWriter.cs
- ResourceReader.cs
- ImplicitInputBrush.cs
- OrderByLifter.cs
- SystemColorTracker.cs
- StaticTextPointer.cs
- VariantWrapper.cs
- SourceElementsCollection.cs
- ProxyWebPartManagerDesigner.cs
- EmptyStringExpandableObjectConverter.cs
- OrderedDictionary.cs
- DataControlImageButton.cs
- Selector.cs
- KeyInterop.cs
- Point3DConverter.cs
- ServerValidateEventArgs.cs
- FixedDocumentPaginator.cs
- CorruptingExceptionCommon.cs
- CodeMemberField.cs
- ToggleButtonAutomationPeer.cs
- WindowsScrollBarBits.cs
- DirectoryNotFoundException.cs
- MembershipValidatePasswordEventArgs.cs
- TextRangeEditTables.cs
- sqlnorm.cs
- BamlResourceSerializer.cs
- SweepDirectionValidation.cs
- Parameter.cs
- NetworkStream.cs
- PrintControllerWithStatusDialog.cs
- LockedHandleGlyph.cs
- HttpProcessUtility.cs
- BackgroundWorker.cs
- HtmlToClrEventProxy.cs
- ProfileSettingsCollection.cs
- ReflectTypeDescriptionProvider.cs
- XPathException.cs
- XmlSchemaInferenceException.cs
- List.cs
- FormsIdentity.cs
- UserUseLicenseDictionaryLoader.cs
- ResponseStream.cs
- oledbmetadatacollectionnames.cs
- WindowsFormsHost.cs
- ConstructorBuilder.cs
- XmlAutoDetectWriter.cs
- DiagnosticsConfigurationHandler.cs
- XmlSignificantWhitespace.cs
- PolyLineSegment.cs
- CompositeTypefaceMetrics.cs
- EventMappingSettingsCollection.cs
- HtmlTernaryTree.cs
- SqlTypeConverter.cs
- ServicePrincipalNameElement.cs
- StyleTypedPropertyAttribute.cs
- TextEditorCopyPaste.cs
- ActivityDesignerLayoutSerializers.cs
- PersonalizationStateQuery.cs
- DetailsView.cs
- LocationReferenceEnvironment.cs
- HyperLink.cs
- String.cs
- SelectionProviderWrapper.cs
- MinMaxParagraphWidth.cs
- RecordBuilder.cs
- ProxyHwnd.cs
- designeractionbehavior.cs
- IERequestCache.cs
- CodeAccessSecurityEngine.cs
- Mapping.cs
- Setter.cs
- DiagnosticTraceSource.cs
- BeginGetFileNameFromUserRequest.cs
- PolicyManager.cs
- StickyNoteHelper.cs
- GenericTypeParameterConverter.cs
- ScrollItemProviderWrapper.cs
- GZipStream.cs
- SQLConvert.cs
- Style.cs
- VersionedStream.cs