2012-01-10 62 views
2

我在使用我的项目中的RawFraction性能计数器时遇到问题。我只想显示totalActionType1/totalActions的一小部分。c中的RawFraction性能计数器#

所以totalActions是我的Rawbase计数器,totalActionType1是我的Rawfraction计数器。 我在特定的地方增加了两个计数器,但我怎么能=看到比率。我知道我在做一些事情/一切都是错误的。 msdn上的帖子也没有帮助。

我可以看到使用CounterSample来计算浮点值,但是我怎样才能显示浮点值作为计数器的原始值。

//Here is how I am incrementing the counters: 

case CounterType.totalActions: 
totalActions.Increment(); 
break; 


case CounterType.totalActionType1: 
totalActionType1.Increment(); 
break; 

//Counter Creation: 
totalActionType1 = new PerformanceCounter("Fract","RawFractionType", false); 
totalActions = new PerformanceCounter("Fract","RawFractionBaseType", false); 
var value = totalActionType1.NextValue(); 

//Counter Setup: 
var countActionType1 = new CounterCreationData("RawFractionType", "", CounterType.RawFraction); 
var countTotalActions= = new CounterCreationData("RawFractionBaseType", "", CounterType.RawBase); 
categoryCollection.Add(countActionType1); 
categoryCollection.Add(countTotalActions); 
PerformanceCounterCategory.Create("Fract", "", PerformanceCounterCategoryType.SingleInstance, categoryCollection); 

感谢,

+1

我们可以看到您用来设置/读取计数器的代码吗? – 2012-01-10 19:13:58

+0

我用最近的代码更新了我的帖子。 – 2012-01-10 20:31:11

+1

什么是_counters定义为? – 2012-01-10 20:58:32

回答

1

所以,我假设你创建了柜台等作为您的安装程序类如下。计数器立即跟随计数器,这很重要。

  installer.Counters.Add(
       new CounterCreationData(counterName, counterDescription, 
             PerformanceCounterType.RawFraction)); 
      installer.Counters.Add(
       new CounterCreationData(counterName + "-Base", 
             counterDescription, 
             PerformanceCounterType.RawBase)); 

如果是这样,你就可以通过为RawFraction创建PerformanceCounter实例并调用它NextValue()查询。

// for read-only access to it 
var pc = new PerformanceCounter(categoryName, counterName, true); 

var value = pc.NextValue(); 

对于一些反类型,您必须首先调用NextValue()两次,黄金计算。另外请记住,RawFraction以百分比形式显示,因此如果该值为0.40,它将显示为40.0。

+0

创建计数器后调用NextValue没有帮助。那么,没有办法看到比率? – 2012-01-10 20:35:57

+1

@TechXie:你有什么价值(或例外)? – 2012-01-10 20:38:04

+0

没有例外。如果我增加原始图像两次并增加基数6次,我会将rawFraction的值看作2而不是百分比值? – 2012-01-10 20:44:22