结论
程序运行产生一个SIGQUIT信号或者其他能关闭进程的信号,该信号没有被捕获或者进程没有实现signal处理函数,导致SIGQUIT信号执行默认方式(动作),即终止调用产生该信号的进程。
详解
SIGQUIT是一个用于终止进程的信号。在默认方式下会导致进程终止并生成core转储文件,有助于调试进程在终止时的状态。
本人出现此问题的原因
alarm函数能够在进程中设置一个定时器。当指定时间到时后,会向进程发送SIGALRM信号。而我将捕获此信号的函数放在alarm函数后定义,导致信号执行默认模式,从而将整个进程退出。