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
- KeyValueConfigurationElement.cs
- MethodBuilderInstantiation.cs
- Point3DAnimationUsingKeyFrames.cs
- FastPropertyAccessor.cs
- SortedDictionary.cs
- DataViewListener.cs
- UntrustedRecipientException.cs
- KeyNotFoundException.cs
- invalidudtexception.cs
- FileDetails.cs
- TreeNodeEventArgs.cs
- SelectorAutomationPeer.cs
- ArrayList.cs
- DesignerDataParameter.cs
- XmlSchemaInferenceException.cs
- UnsafeNativeMethods.cs
- CellIdBoolean.cs
- DataGridViewCellLinkedList.cs
- ScriptingSectionGroup.cs
- UserControlParser.cs
- XmlQualifiedNameTest.cs
- Compilation.cs
- ErrorWrapper.cs
- CodeDOMProvider.cs
- QueryContext.cs
- SafeEventHandle.cs
- DataControlFieldCollection.cs
- ThreadExceptionDialog.cs
- XhtmlConformanceSection.cs
- _DigestClient.cs
- ReaderContextStackData.cs
- DataGridCommandEventArgs.cs
- AdornerLayer.cs
- counter.cs
- DataGridViewCellStateChangedEventArgs.cs
- SafeHGlobalHandleCritical.cs
- ISAPIWorkerRequest.cs
- OdbcStatementHandle.cs
- DefaultTraceListener.cs
- CopyOnWriteList.cs
- ValueTable.cs
- ConnectionPoint.cs
- RequestQueryProcessor.cs
- ConditionalAttribute.cs
- WindowsRegion.cs
- Parallel.cs
- ErrorHandler.cs
- XPathNodeIterator.cs
- OSFeature.cs
- EventLogPermissionEntry.cs
- UnaryExpressionHelper.cs
- NetCodeGroup.cs
- ValidatorCollection.cs
- HostExecutionContextManager.cs
- GridViewColumnCollection.cs
- FixedStringLookup.cs
- SslStream.cs
- DataColumnMapping.cs
- XmlQuerySequence.cs
- CollectionViewSource.cs
- LayoutTable.cs
- EntityProxyFactory.cs
- StreamSecurityUpgradeAcceptor.cs
- Cursors.cs
- CodeDirectiveCollection.cs
- MenuItemCollection.cs
- XmlHierarchyData.cs
- CultureTable.cs
- FormsAuthenticationCredentials.cs
- WindowsListViewSubItem.cs
- XmlTextReaderImplHelpers.cs
- WinFormsSpinner.cs
- QilValidationVisitor.cs
- ComAwareEventInfo.cs
- DbCommandDefinition.cs
- EntityDataSourceDesigner.cs
- DataGridViewRowPostPaintEventArgs.cs
- SqlConnectionManager.cs
- Char.cs
- EntityObject.cs
- RemotingServices.cs
- ExclusiveTcpTransportManager.cs
- SemanticResultKey.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- Guid.cs
- EventListenerClientSide.cs
- DataGridCellInfo.cs
- Activity.cs
- FocusTracker.cs
- ExecutionContext.cs
- SqlCacheDependencyDatabase.cs
- WebExceptionStatus.cs
- NavigationPropertyEmitter.cs
- WsatAdminException.cs
- TraceUtility.cs
- OleDbParameter.cs
- TypeConverterHelper.cs
- RowUpdatingEventArgs.cs
- ping.cs
- CodeArrayIndexerExpression.cs