1

我正在使用 Cronic gem 在我的 Rails 应用程序中安排作业。

每次重新部署应用程序时,我都会使用命令“script/cronic -k -P tmp/pids/cronic.pid”停止 Cronic 作业。

我的问题是:如果 Cronic 作业当前正在运行,它会自动终止吗?还是在整个 Cronic 进程停止之前等待作业停止?

4

1 回答 1

1

很难说,但https://github.com/bazaarlabs/dante/blob/master/lib/dante/runner.rb#L211似乎指出 Dante(Cronic 用来处理 deamonization)发送 Process.kill (“期限”)到 PID。

现在我认为 cronjob 进程应该等到它完成处理,但这取决于实现。如果我是你,我会亲自尝试。创建一个仅休眠一定时间的作业,然后通过 unix 终端发送 kill (不要设置 -9)并查看它是否立即退出。

于 2013-05-01T14:59:32.403 回答