0

Unix(linux)デーモンとしてスタンドアロンのrubyスクリプトを実行する必要があります。

そのデーモンを実行した後、それを使用して別のRubyメソッドを実行する必要があります。

ruby-daemonを使用して、gemを自分のマシンにインストールしましたgem install daemon

テストデーモンプログラムを実行しました。

私のtest.rbファイルは:

module Test
    def test_method
        @s =" ITS WORKING !"
        file=File.new("/home/username/test.txt", "w")

        file.puts @s

        file.close
    end
end

私のtest_control.rbファイルは:

# this is myserver_control.rb

  require 'rubygems'        # if you use RubyGems
  require 'daemons'

  Daemons.run('test.rb')

この後、次のコマンドを実行します。ruby test_control.rb start

デーモンプログラムが正しく起動したかどうかを確認するにはどうすればよいですか?

どうすればそれを使ってメソッドを呼び出すことができますか?

4

1 に答える 1

1

投稿のフォーマットがかなりずれているように見えるので、誰かがそれを修正できるといいのですが、ここでの問題は、モジュールを定義しているのに、定義したメソッドを実際に起動していないことだと思います。

Daemonsユーティリティは、提供されたスクリプトのみを実行します。Daemons自体の問題を診断する前に、「test.rb」ファイルをコマンドラインで直接実行できることをテストする必要があります。

test.rbのリワークと同じかもしれません。

module Test
  def self.test_method
    @s =" ITS WORKING !"
    file = File.new("/home/username/test.txt", "w")

    file.puts @s

    file.close
  end
end

Test.test_method

実行するモジュールをデーモンに渡す方法は他にもありますが、その方法では使用していません。

于 2009-09-03T14:49:17.653 に答える