我尝试了以下代码:
p = StartProcess("some_process.exe");
DateTime startTime = DateTime.Now;
p.Start();
while (!p.HasExited)
{
executeTime = (DateTime.Now - startTime).Milliseconds;
if (executeTime > 10000) // 10 seconds
{
Console.Write("Test \"" + inputTest + "\" failed: takes more than 10 seconds");
break;
}
}
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
有可能吗?
Dar*_*rov 12
您可以使用WaitForExit方法:
if (!p.WaitForExit((int)TimeSpan.FromSeconds(10).TotalMilliseconds))
{
// timeout exceeded while waiting for the process to exit
}
Run Code Online (Sandbox Code Playgroud)