我想让我的项目更快。我使用了秒表类并计算了这些代码块之间的时间。大部分时间都花在string output = p.StandardOutput.ReadToEnd();
行。有没有建议使用而不是这个代码?
Process p = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = DBUpdater_Adresi;
startInfo.RedirectStandardOutput = true;
startInfo.UseShellExecute = false;
startInfo.CreateNoWindow = true;
p.StartInfo = startInfo;
p.Start();
string output = p.StandardOutput.ReadToEnd();
p.WaitForExit();
答案 0 :(得分:3)
大部分时间花在该行上的原因是它等待您启动的程序的整个执行。它不需要时间,因为它效率低,需要时间,因为它正在等待另一个过程。
最后一行等待进程退出,但从关闭输出流到进程结束时的时间非常少。