许多 PerformanceCounter 没有改变值
many PerformanceCounter not changing value
嗨,我创建了很多 PerformanceCounter
我的问题是,当我设置一个计数器的值时,它会在所有其他计数器中发生变化
这是我的代码:
public class PerformanceCounterHelper
{
private const string COUNTER_STILL_ALIVE = "Nb secondes depuis dernière activité";
private const string COUNTER_STILL_ALIVE_HELP = "Nombre de secondes depuis le dernier signe de vie";
private const string COUNTER_MESSAGE_NUMBER = "Nb messages traités";
private const string COUNTER_MESSAGE_NUMBER_HELP = "Nombre de messages traités par le dispatcher";
private const string COUNTER_MESSAGE_ERROR = "Nb messages en erreur";
private const string COUNTER_MESSAGE_ERROR_HELP = "Nombre de messages en erreur";
private PerformanceCounter stillAliveCounter;
private PerformanceCounter messageNumberCounter;
private PerformanceCounter messageErrorNumberCounter;
public PerformanceCounterHelper(string categoryName)
{
stillAliveCounter = new PerformanceCounter(categoryName, COUNTER_STILL_ALIVE, false);
messageNumberCounter = new PerformanceCounter(categoryName, COUNTER_MESSAGE_NUMBER, false);
messageErrorNumberCounter = new PerformanceCounter(categoryName, COUNTER_MESSAGE_ERROR, false);
//DonnerSigneDeVie();
messageNumberCounter.RawValue = 0;
messageErrorNumberCounter.RawValue = 0;
}
public void DonnerSigneDeVie() {stillAliveCounter.RawValue = Stopwatch.GetTimestamp();}
public void IncrementerNombreMessagesTraites()
{
messageNumberCounter.RawValue += 1;
}
public void IncrementerNombreMessagesEnErreur()
{
messageErrorNumberCounter.RawValue += 1;
}
public PerformanceCounterHelper()
{ }
最后所有计数器的值都是“3”
我看不到你的 class PerformanceCounter,但我认为其中有一个静态变量,它包含 RawValue
!?
从变量中删除 static
,它应该可以工作。
如需更多反馈,请向我们展示 class。
如何编辑问题:
嗨,我创建了很多 PerformanceCounter 我的问题是,当我设置一个计数器的值时,它会在所有其他计数器中发生变化 这是我的代码:
public class PerformanceCounterHelper
{
private const string COUNTER_STILL_ALIVE = "Nb secondes depuis dernière activité";
private const string COUNTER_STILL_ALIVE_HELP = "Nombre de secondes depuis le dernier signe de vie";
private const string COUNTER_MESSAGE_NUMBER = "Nb messages traités";
private const string COUNTER_MESSAGE_NUMBER_HELP = "Nombre de messages traités par le dispatcher";
private const string COUNTER_MESSAGE_ERROR = "Nb messages en erreur";
private const string COUNTER_MESSAGE_ERROR_HELP = "Nombre de messages en erreur";
private PerformanceCounter stillAliveCounter;
private PerformanceCounter messageNumberCounter;
private PerformanceCounter messageErrorNumberCounter;
public PerformanceCounterHelper(string categoryName)
{
stillAliveCounter = new PerformanceCounter(categoryName, COUNTER_STILL_ALIVE, false);
messageNumberCounter = new PerformanceCounter(categoryName, COUNTER_MESSAGE_NUMBER, false);
messageErrorNumberCounter = new PerformanceCounter(categoryName, COUNTER_MESSAGE_ERROR, false);
//DonnerSigneDeVie();
messageNumberCounter.RawValue = 0;
messageErrorNumberCounter.RawValue = 0;
}
public void DonnerSigneDeVie() {stillAliveCounter.RawValue = Stopwatch.GetTimestamp();}
public void IncrementerNombreMessagesTraites()
{
messageNumberCounter.RawValue += 1;
}
public void IncrementerNombreMessagesEnErreur()
{
messageErrorNumberCounter.RawValue += 1;
}
public PerformanceCounterHelper()
{ }
最后所有计数器的值都是“3”
我看不到你的 class PerformanceCounter,但我认为其中有一个静态变量,它包含 RawValue
!?
从变量中删除 static
,它应该可以工作。
如需更多反馈,请向我们展示 class。
如何编辑问题: