/// <summary> /// Проверка процесса /// </summary> /// <param name="process"></param> /// <returns></returns> public double CheckProcess(Process process) { bool IsExists = false; // проверяем по всему списку foreach (ProccessCounter pc in perfList) { // если нашли процесс, возвращаем счетчик if (pc.process.ProcessName == process.ProcessName) { IsExists = true; return(pc.perfCounter.NextValue() / Environment.ProcessorCount); } } // если не нашли, добавим в список if (!IsExists) { ProccessCounter tmpProc = new ProccessCounter(); tmpProc.process = process; tmpProc.perfCounter = new PerformanceCounter("Process", "% Processor Time", process.ProcessName, true); perfList.Add(tmpProc); } return(0); }
/// <summary> /// Проверка процесса /// </summary> /// <param name="process"></param> /// <returns></returns> public double CheckProcess(Process process) { bool IsExists = false; // проверяем по всему списку foreach (ProccessCounter pc in perfList) { // если нашли процесс, возвращаем счетчик if (pc.process.ProcessName == process.ProcessName) { IsExists = true; return pc.perfCounter.NextValue() / Environment.ProcessorCount; } } // если не нашли, добавим в список if (!IsExists) { ProccessCounter tmpProc = new ProccessCounter(); tmpProc.process = process; tmpProc.perfCounter = new PerformanceCounter("Process", "% Processor Time", process.ProcessName, true); perfList.Add(tmpProc); } return 0; }