提问人:SSDev 提问时间:12/18/2021 最后编辑:SSDev 更新时间:12/20/2021 访问量:421
当父进程异常终止时,如何退出子进程?
How can I exit a child process when the parent abnormally terminate?
问:
当父母异常退出时,我需要终止我的孩子。我在下面的链接中找到了满足我要求的答案:
来自tomcri的回答:
您只需在子进程中启动从 System.in 读取线程即可。如果您不写信给孩子的 stdin,其他人不会这样做,并且线程将“永远”阻止。但是,如果父进程被终止或以其他方式死亡,您将获得 EOF(或异常)。因此,您也可以关闭孩子。(子进程以 java.lang.ProcessBuilder 启动)
实际上,我试图在此答案下方发表评论,但由于缺乏足够的声誉而无法发表评论。
所以我的问题是,我如何识别 stdin 中的字符是 EOF?在我的程序中,我也出于其他目的从 stdin 读取数据。所以我需要以某种方式知道 EOF/(chars 在父母去世时出现)何时出现。stdin 填充了字符 = ÿ(十六进制 = 0xFFFF)。我读过一些页面,例如“最高可能的有效代码点是 Unicode 中的 Ux10FFFF”。那么我该如何检查退出呢?
我的程序是Windows C++,支持Unicode字符。有没有更好的方法来理解这种情况?
答: 暂无答案
评论
JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE
size