Joe*_*Fan 5 c# process git-for-windows
我使用以下代码git从 C# 进行调用:
var pInfo = new ProcessStartInfo
{
FileName = "git",
Arguments = "checkout master",
UseShellExecute = false
};
using var p = Process.Start(pInfo);
Console.WriteLine(p.Id);
p.WaitForExit();
Run Code Online (Sandbox Code Playgroud)
打印的进程 ID 是,比如说 3709。当我的程序结束时,我查看任务管理器,看到一个git.exe进程仍在以不同的 ID 运行,比如说 8865。这个进程仍然无限期地运行。
在我看来,git我的程序启动的进程会产生第二个git永远不会退出的进程。我有什么办法可以阻止这种行为吗?事实上,每次我运行程序时,都会git.exe无限期地留下另一个进程,随着时间的推移,数量会增加很多,直到我重新启动。
git(或者,除了运行可执行文件之外,还有其他方法可以调用吗?)