gpt4 book ai didi

bash - 使用 sigterm 杀死进程并在超时后升级到 sigkill

转载 作者:行者123 更新时间:2023-12-04 01:37:07 24 4
gpt4 key购买 nike

有没有办法对超时的进程进行 sigterm?如果该进程没有在 30 分钟内正常终止,则该进程应该得到 sigkill。理想情况下,这种正常关闭应该在后台执行。

最佳答案

这是 timeout command ,它允许您限制进程的执行时间,如果它没有及时响应初始信号(默认为 SIGTERM),则升级为 SIGKILL。这不是您所要求的,但这可能就足够了。

要执行您实际描述的操作(发送信号,短暂等待,然后发送终止),您可能需要自己做一些记账,如 this question细节。

一种选择是使用 Upstart (或者我想象其他服务管理器),它提供了一个 kill timeout n command那做你想要的。

顺便说一句,许多系统会将 30 分钟视为等待 SIGTERM 的时间太长。例如,Linux 会执行类似于您在关闭时所描述的操作,但是在 SIGKILL 之前只给进程几秒钟的时间来清理和退出它们。对于其他用例,您当然可以像您描述的那样(例如使用 Upstart)长期终止,但是 YMMV。

关于bash - 使用 sigterm 杀死进程并在超时后升级到 sigkill,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49245948/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com