【发布时间】:2014-08-29 21:13:15
【问题描述】:
我想一次只发送一封电子邮件,所以我每分钟都有一个脚本。是否可以只发送一封电子邮件,然后阻止延迟的作业发送下一个排队的作业?
【问题讨论】:
标签: ruby ruby-on-rails-4 delayed-job
我想一次只发送一封电子邮件,所以我每分钟都有一个脚本。是否可以只发送一封电子邮件,然后阻止延迟的作业发送下一个排队的作业?
【问题讨论】:
标签: ruby ruby-on-rails-4 delayed-job
在将下一个作业放入队列之前,您可以查看已在队列中的最后一个作业,并检查它是 run_at 时间。然后将您的工作的run_at 时间设置为一分钟后。如果队列中没有作业,请将其设置为现在或一分钟后,具体取决于您需要在大约一分钟之间设置的严格程度。
【讨论】:
您可以从 DJ 的表本身获取一项特定的作业,调用它然后销毁它,例如:
job = Delayed::Job.last
job.invoke_job # This will NOT destroy the job
job.destroy
在这里找到它:https://groups.google.com/forum/#!topic/delayed_job/5j5BmAlXN3g
【讨论】: