WaitForExit有时(随机)不起作用

时间:2013-02-08 06:19:49

标签: c# waitforexit

代码(只有部分)在大多数情况下都能正常工作,但它有时会挂在那里,即使任务管理器中的进程不存在,看起来也不会调用try ... catch块之后的行更多。

因为大部分时间都没有问题,所以我无法在调试时重现这个问题。任何人都可以给我一个提示,为什么或者这种情况会发生什么?

try {
    process.Start();
    process.BeginOutputReadLine();
    process.BeginErrorReadLine();
    process.WaitForExit(settings.PlinkConnectTimeout * 1000);
    if (process != null && !process.HasExited) {
        if (IsConnected) {
            process.WaitForExit();
        }
        else {
            process.Kill();
        }
    }
}
catch { }

IsConnected = false;
IsConnecting = false;
Disconnected(isLastSuccess, isReconnect);

0 个答案:

没有答案