linux设置程序运行超时时间

linux设置程序运行超时时间,第1张

概述在某些情况下,我们需要限制程序的运行时间(比如cronjob等),这里简单介绍下使用信号及timeout的实现方法 1. 假如有如下代码(test_timout.sh): #!/bin/bashwhile true do echo -n "Current date: " date sleep 1done 一旦运行后(bash test_tim

在某些情况下,我们需要限制程序的运行时间(比如cronjob等),这里简单介绍下使用信号及timeout的实现方法

1. 假如有如下代码(test_timout.sh):

#!/bin/bashwhile true    do    echo -n "Current date: "    date    sleep 1done

一旦运行后(bash test_timout.sh),就无法自行终止;如果在代码中有BUG,导致程序无法正常终止,那么机器的资源就得不到释放(如果是cronjob的话,资源占用就会越来越多),

因此在这种情况下,我们需要设置程序的运行时间;通过信号和timeout命令的实现如下

2. 让上面的代码在3秒后字段退出的解决方案如下:

   1)修改上面的代码(test_timout.sh),使其能在捕捉信号后退出

#!/bin/bashtrap "echo received a interrupt signal; exit 1" SIGINT while true    do    echo -n "Current date: "    date    sleep 1done

  2)运行名由bash test_timout.sh改为timeout -s SIGINT 3 bash test_timout.sh;这样在3秒后,程序就会自动退出

总结

以上是内存溢出为你收集整理的linux设置程序运行超时时间全部内容,希望文章能够帮你解决linux设置程序运行超时时间所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1024889.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存