2011-03-10 39 views
0

我設計了一個過程監視器,它工作正常,但是在5或6個小時後CPU使用率達到100%。在物理PC上它工作正常,但在VM上需要100 %usage.plz告訴我什麼是問題。編碼部分有兩個線程,一個用於刪除已關閉的進程,一個用於捕獲新進程。過程監視器,5-6小時後CPU佔用率達到100%

private void getPorcess() 
{ 
    int pid=0; 
    int pid1=0; 

    ArrayList oProList1 = new ArrayList(); 
    ArrayList oProList2 = new ArrayList(); 


    while (true) 
    { 
     Process[] oPrcs = Process.GetProcesses(); 

     if (oPrcs.Length < oProList1.Count) 
     { 
      foreach (Process pr1 in oPrcs) 
      { 
       pid1 = pr1.Id; 
       string p = pr1.ProcessName; 

       oProList2.Add(pid1); 

      } 
      //MessageBox.Show(oProList2.Count.ToString()); 
      oProList1.Clear(); 
      oProList1.AddRange(oProList2); 
      oProList2.Clear(); 
     } 
     foreach (Process pr in oPrcs) 
     { 
       pid = pr.Id; 
       if (!oProList1.Contains(pid)) 
       { 
        oProList1.Add(pid); 
        string szres = ""; 
        try 
        { 
         string prcsname = pr.Modules[0].FileName; 
         if ("") 
         { 


         } 

        } 
        catch 
        { 

        } 
       } 
     } 
     Thread.Sleep(100); 
    } 
} 
+2

更多詳細請... – 2011-03-10 06:39:36

+0

@dnl,廢話。時間拔出ouija板! – 2011-03-10 06:40:42

+1

「我的車不跑,請告訴我爲什麼」< - @ SunilRai86:你能給我答案嗎? – 2011-03-10 06:42:21

回答

4

PLZ告訴我是什麼問題

,導致其使用100%的CPU的bug。

您應該修復此錯誤,使其不能使用100%的CPU。

+1

我認爲這是相關的答案,因爲它是問題:http://blog.stackoverflow.com/2009/04/joke-questions-please-refrain/(現在評論,另一方面...) – 2011-03-10 06:41:48