小编big*_*cvs的帖子

如何仅在进程失败时重新启动进程,而在正常退出(或具有某些返回代码)时则不重新启动进程?

我遇到一个奇怪的问题,可能与硬件初始化有关。我正在开发一个基于 Java 的自动数据采集系统,该系统在带有 Ubuntu 16.04 的 SBC 上运行。数据采集​​程序目前是通过 cron 启动的,尽管我打算切换到 systemd。

如果我重新启动系统,它就会启动并运行良好。但是,如果断电并冷启动(这是正常方式),程序将崩溃并出现错误free(): corrupted unsorted chunks。如果我再次启动它,它似乎运行良好。我需要找出原因,希望能找出原因,但这可能需要一些时间,同时系统需要进一步测试,我需要一种解决方法,可以在崩溃时重新启动它。仅添加延迟并没有帮助。

我想做的是重新启动 Java 进程或从 bash 包装脚本重新启动系统,但前提是它崩溃了。如果它以零退出代码退出(或者,理想情况下,以预定的允许退出代码集中的任何代码退出),则不应重新启动它,并且脚本也应退出。

java bash ubuntu bash-scripting

1
推荐指数
1
解决办法
1417
查看次数

标签 统计

bash ×1

bash-scripting ×1

java ×1

ubuntu ×1