0

私は単純なコントローラーを持っていて、そのコントローラーがデーモンを起動してバックグラウンドジョブを実行するようにします(コンピューターに接続されたArduinoボードによって供給されるsstdinデータを読み取ります)。

class DaemonController < ApplicationController
  def index
    require 'rubygems'
    require 'daemons'

    options = {
      :app_name => "collectTemperature",
      :multiple => true
    }
    readtty = Daemons.call(options) do
    loop {
      sleep 10
    }
    end
  end # def                                                                      
end # class       

プロセスを作成します(これからはスリープ状態になりますが、この単純なコードが機能するようになったら、このプロセスに入ります)が、ブラウザーのrailsフレームワークを介してコントローラーを呼び出すと、ブラウザーの行へのポインターにエラーメッセージが表示されます。デーモン呼び出しの(14行目)。

SystemExit in DaemonController#index

daemons (1.1.9) lib/daemons/daemonize.rb:65:in `exit'
daemons (1.1.9) lib/daemons/daemonize.rb:65:in `call_as_daemon'
daemons (1.1.9) lib/daemons/application.rb:259:in `start_proc'
daemons (1.1.9) lib/daemons/application.rb:296:in `start'
daemons (1.1.9) lib/daemons.rb:252:in `call'
app/controllers/daemon_controller.rb:14:in `index'

私はどんな助けにも大いに感謝します、そしてそれがばかげた質問であるならばひどく申し訳ありません;-)

4

1 に答える 1

1

Daemons.call(options) beginそれよりもDaemons.call(options) do

于 2013-03-23T17:32:56.237 に答える