我试图测量C#中进程的执行时间。这是我用来执行此操作的代码:
private static double TimeProcess(string name, string workingDirectory, string arguments)
{
Process process = new Process();
process.StartInfo.WorkingDirectory = workingDirectory;
process.StartInfo.FileName = name;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.Arguments = arguments;
process.Start();
process.WaitForExit();
return process.TotalProcessorTime.TotalMilliseconds;
}
我知道通常的基准测试方法是实例化秒表并使用它来测量经过的时间,但是,我想知道在这种情况下秒表是否合适,因为它会受到影响例如安排。我的方法可以保证只测量流程执行的时间。
我的两个问题: