3

使用delayed_jobgem,我怎样才能在不停止所有工作人员的情况下只停止一个进程?

例如:

rake jobs:work启动工人

process1 = SomeClass.enqueue在代码中启动进程 1

process2 = SomeClass.enqueue在代码中启动进程 2

process1.stop将仅停止进程 1 并保持进程 2 运行。

我想类似的问题是“我怎样才能获得延迟作业过程的 PID?” 因为这样我就可以使用 PID 终止进程。

4

1 回答 1

0

Delayed Job 整体上是一个过程。要了解 pid,请检查延迟作业开始时在 temp 文件夹中创建的 .pid 文件。为了从代码中停止某个特定进程,请使用 Delayed::Job.all,或者找到您的工作并使用 destroy 方法将其关闭。

于 2013-05-08T06:40:35.837 回答