有没有递归标记Windows进程的方法?

有没有递归标记Windows进程的方法?,windows,process,tagging,Windows,Process,Tagging,目前,我正在使用环境变量来实现这一点。但是,当进程开始使用cmd.exe而不是cygwin的bash.exe时,我无法再通过/proc轻松读取它们的环境变量。除此之外,在读取进程的环境变量和终止它之间还存在一个竞争条件,在这两个过程中,进程同时被另一个具有相同进程id的进程替换 另一个解决方案可能是进程组,假设组id将传播到子进程,并且我可以通过使用进程组id以某种方式显式地杀死东西。但是,这不适用于已经有进程组id的进程。或者我可以给它们第二个组id吗 最后的解决方案是假设父进程保持运行并清除

目前,我正在使用环境变量来实现这一点。但是,当进程开始使用cmd.exe而不是cygwin的bash.exe时,我无法再通过/proc轻松读取它们的环境变量。除此之外,在读取进程的环境变量和终止它之间还存在一个竞争条件,在这两个过程中,进程同时被另一个具有相同进程id的进程替换

另一个解决方案可能是进程组,假设组id将传播到子进程,并且我可以通过使用进程组id以某种方式显式地杀死东西。但是,这不适用于已经有进程组id的进程。或者我可以给它们第二个组id吗

最后的解决方案是假设父进程保持运行并清除子进程。然而,这是一个相当危险的假设,在这里,我们再次遇到了识别子进程和通过其PID杀死它们的实际行为之间的竞争条件


Windows是否提供了任何工具来实现我的目标?不一定使用PGID或环境变量。

过程组id
-这是什么?!不清楚您的要求,但可能是您想要的?提示很好,但不是:“使用Win32_Process.Create创建的子进程与作业不关联。”