C# 性能计数器平均计时器如何与其基准关联?
我正在为我的c#项目添加一些性能计数器,并创建一个新的PerformanceCounter类别。在这个类别中,我希望有多个计数器/计时器来跟踪不同的事物。我需要使用多个平均计时器,并试图了解当CoutnerCreationDataCollection中有多个计数器时,AverageBase计数器如何与正确的AverageTimer32计数器关联 几个问题:C# 性能计数器平均计时器如何与其基准关联?,c#,.net,performance,performancecounter,C#,.net,Performance,Performancecounter,我正在为我的c#项目添加一些性能计数器,并创建一个新的PerformanceCounter类别。在这个类别中,我希望有多个计数器/计时器来跟踪不同的事物。我需要使用多个平均计时器,并试图了解当CoutnerCreationDataCollection中有多个计数器时,AverageBase计数器如何与正确的AverageTimer32计数器关联 几个问题: 1.首先,这是正确的方法吗?我发现的所有样本都只有一个平均计时器。 2.如果第一个问题的答案是肯定的,那么我认为在AverageTimer3
1.首先,这是正确的方法吗?我发现的所有样本都只有一个平均计时器。
2.如果第一个问题的答案是肯定的,那么我认为在AverageTimer32之后添加到集合中的第一个AverageBase计数器是否正确?我确实在一篇文章中找到了他们的参考资料,需要按顺序添加 下面是我正在尝试做的一个例子:
var dataColl = new CounterCreationDataCollection
{
new CounterCreationData
{
CounterType = PerformanceCounterType.AverageTimer32,
CounterName = "AverageTime1",
CounterHelp = "AverageTime1_Help"
},
new CounterCreationData // Does this get linked to AverageTime1 simply
// because it is being added after it?
{
CounterType = PerformanceCounterType.AverageBase,
CounterName = "AverageTime1Base"
},
new CounterCreationData
{
CounterType = PerformanceCounterType.AverageTimer32,
CounterName = "AverageTime2",
CounterHelp = "AverageTime2_Help"
},
new CounterCreationData
{
CounterType = PerformanceCounterType.AverageBase,
CounterName = "AverageTime2_Base"
},
}
PerformanceCounterCategory.Create(
"MyCategoryName"
, "My Category Help"
, PerformanceCounterCategoryType.SingleInstance
, dataColl);
位置。需要基数的计数器需要紧跟在定义列表中的基数之后。因此,您的代码是正确的,您有两个AverageTimer32,每个后跟AverageBase 作为一个旁注,当你厌倦了一遍一遍地输入同一个代码时,你应该考虑.<