1

我正在制作一个定期运行的脚本,以使用 rufus 调度程序在我的 rails 应用程序中创建一些代码(我将它与守护进程一起使用,专门用于生产服务器)。但它根本不起作用,因为它终止并终止了进程。

这是我的脚本/rufus_schedule 文件

#!/usr/bin/env ruby

root = File.expand_path(File.join(File.dirname(__FILE__), '..'))

require File.expand_path(File.join(File.dirname(__FILE__), '..', 'config', 'environment'))

require 'rubygems'
require 'rufus/scheduler'
gem 'daemons'
require 'daemons'

options = {
  :dir_mode   => :normal,
  :dir        => File.join(root,'log'),
  :log_output => true,
  :backtrace  => true,
  :multiple   => false
}

Daemons.run_proc("rufus_schedule", options) do
  scheduler = Rufus::Scheduler.start_new

  scheduler.every '10s' do
    BloodDonationUtil.clear_requests_after(7)
  end
end
4

1 回答 1

2

我不知道您所说的“终止进程”是什么意思,我猜您的意思是“它立即退出”。

请阅读: https ://github.com/jmettraux/rufus-scheduler#schedulerjoin

在脚本末尾添加:

scheduler.join
于 2013-06-24T18:42:54.227 回答