0
是否有可能杀死由System创建的进程?迄今为止,据我所知,System使用fork()函数来创建一个新的进程。我想跟踪调用的进程的运行时间(在调用系统之前将其分开),如果超出运行时间限制,则将其终止。如果杀死我的主流程创建的孩子,系统()创建的孩子是否也会被杀死?由系统创建的C++杀死进程&&限制它的执行时间
这不是实际的代码,但可能会给我一个想法,我在说什么。
int pid = fork();
if(pid == 0)
{
system("./veryLongProgram");
}
else
{
// calculate time elapsed and kill on long execution time
}
我也喜欢,如果我可以使用CPU时间限制,但我不希望我的子进程睡觉。如果确实如此 - 它可能会长时间处于这种状态。是否有可能中断任何睡眠,暂停或被程序故意调用的任何东西?这将是理想的。或者,也许我可以检查我的流程是否正在睡觉(在这种情况下,我还必须确保它是有意做的,并且因为某些打印或其他原因而没有暂停)?而不是系统