C#等待外部PID退出

C# wait for external PID to exit

如何等到 PID(不是从程序本身启动)不再存在? 我希望我的程序通过命令行参数从外部程序获取 PID,然后等待它退出然后执行某些操作。

我进行了搜索,但我所能找到的只是一些示例,其中进程已由 C# 程序本身启动。这很容易管理..

我本来打算做这样的事情,但显然行不通..

Process[] pname = Process.GetProcessById(7860);
            if (pname.Length == 0)
                Console.WriteLine("nothing");
            else
                Console.WriteLine("run");

如何实现?

您可以通过以下方式轻松做到这一点:

var p = Process.GetProcessById(7860);
p.WaitForExit();