我有一个.NET进程,它通过Invoke
类启动另一个类似守护进程的.NET进程。因为Process
利用句柄继承(ngx-infinite-scroll),所以我的守护进程似乎会阻止父进程拥有的句柄被清除。
因此,我希望通过关闭从其父级继承的所有句柄来启动子进程(标准IO流除外)。是否有允许我实现此功能的.NET API?
答案 0 :(得分:0)
我认为你不必太担心它。阅读你链接的github引用和本文:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms683463(v=vs.85).aspx
除非您在父进程中明确创建标记为可继承的文件句柄等,否则我认为不存在问题。
另一种选择是使用PInvoke手动调用CreateProcess,并将InheritHandles设置为false。
https://www.pinvoke.net/default.aspx/kernel32/CreateProcess.html