如何获得特定性能计数器的单位

时间:2016-01-16 08:03:58

标签: c# .net performancecounter system.diagnostics

我目前正通过System.Diagnostics.PerformanceCounter类读取CPU使用率等不同数据。之后,我想输出与计数器相关的值和单位(例如MB或GB作为内存)。

有没有办法查询性能计数器的值有哪个单位?

1 个答案:

答案 0 :(得分:1)

查看countername属性,然后在字符串中查找(mbytes或kbytes),如果没有找到则查找字节。这将让你知道计数器的规模(vb.net)

if instr(somecounter.countername.tolower , "mbytes")  then
     blah blah
elseif instr(somecounter.countername.tolower , "kbytes") then
     blah blah
elseif instr(somecounter.countername.tolower , "bytes") then
     blah blah
else
     blah blah
end if

dim scale as string = ""
dim xPos as integer = instr(somecounter.countername.tolower, "bytes")
  

之前抓住一个字符并修剪它以删除前面的空格(如果有的话)   否则返回比例

if xpos>1 then 
   scale=strings.mid(somecounter.countername.tolower, xpos-1, 6).trim
elseif xpos=1 then    
  

反手的第一个字,如果实际是字节

   scale="bytes"
else
   scale="something else"
end if