Linux 收到SIGTERM后,流程应该以多快的速度退出?

Linux 收到SIGTERM后,流程应该以多快的速度退出?,linux,exit,sigterm,Linux,Exit,Sigterm,对于linux进程在接收到SIGTERM信号后最多需要多长时间才能退出,是否有一些指导原则 编辑:我这样问是因为我必须决定阻止I/O呼叫的超时时间。没有最大值。一个进程可以简单地忽略SIGTERM。它可以停止,在这种情况下,它将不会处理SIGTERM,直到它得到SIGCONT。它可以在不间断的系统调用中被阻止。(我没有最新的示例,但我肯定记得当硬装NFS服务器出现故障时,会进行不间断的读/写操作。如果您碰巧正在编写自己的内核模块,那么……)最后,如果系统负载很重,进程响应信号可能需要更长的时间。

对于linux进程在接收到SIGTERM信号后最多需要多长时间才能退出,是否有一些指导原则


编辑:我这样问是因为我必须决定阻止I/O呼叫的超时时间。

没有最大值。一个进程可以简单地忽略
SIGTERM
。它可以停止,在这种情况下,它将不会处理
SIGTERM
,直到它得到
SIGCONT
。它可以在不间断的系统调用中被阻止。(我没有最新的示例,但我肯定记得当硬装NFS服务器出现故障时,会进行不间断的读/写操作。如果您碰巧正在编写自己的内核模块,那么……)最后,如果系统负载很重,进程响应信号可能需要更长的时间。

我看到一些需要5秒,但我宁愿说越快越好。关闭打开的连接,保存设置和数据,清除内存,仅此而已。其他时候,我也看到过SIGTERM被重新映射到其他功能的情况。@Falk:这应该是一个答案,我之所以这么问,是因为我需要决定阻止I/o调用的超时。@FranBorcic:这应该是问题的一部分,你应该编辑它。很抱歉,我没有任何关于它的参考资料,我不能把它作为一个答案写下来。