4

理由はわかりませんが、多くのコンピュータが次の操作でハングします。

void Init()
{
    net1 = new List<PerformanceCounter>();
    net2 = new List<PerformanceCounter>();
    foreach (string instance in new PerformanceCounterCategory("Network Interface").GetInstanceNames())
    {
        net1.Add(new PerformanceCounter("Network Interface", "Bytes Received/sec", instance));
        net2.Add(new PerformanceCounter("Network Interface", "Bytes Sent/sec", instance));
    }
}

//Once in 1 second
void UpdateStats()
{
    Status.Text = "";
    for (int i = 0; i < net1.Count; i++)                    
         Status.Text += string.Format("{0}/{1} Kb/sec;   ", net1[i].NextValue() / 1024, net2[i].NextValue() / 1024);
}

一部の計算プログラムでは、 の最初の呼び出しでプログラムが完全にハングアップしUpdateStats()、他の計算プログラムでは 100% の CPU 負荷が発生しますが、プログラムは (ゆっくりと) 動作します。他のカウンターはnew PerformanceCounter("Processor", "% Processor Time", "_Total")正常に動作しているようです。

それはなぜですか?

4

1 に答える 1

0

プリンター参照を削除すると、最初のハングが解消されました

  new PerformanceCounter("Processor", "% Processor Time", "_Total").  

これで、ハングする代わりに新しいエラー メッセージが表示されるので、追跡できます。から:

プリンタードライバーに関する回答

Windows 8、MVSV 2013、および IIS Express 8 を搭載した 2 台の同様の Dell ラップトップ (1 台は新しい) がありました。1 台はハングし、もう 1 台はハングしませんでした。

于 2014-10-03T17:29:39.493 に答える