许多 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。


如何编辑问题: