1

作成した Ruby スクリプトの仕事がありますが、多くのライブラリを使用しているため、トレースが複雑です。のような端末で実行すると

ruby ./my_process

それは完全に機能します。しかし、私がそれを起動すると

ruby ./my_process &

停止状態のままで、期待どおりに動作しません。

daemonize_spawn gem、Process.daemon を使用しようとしたり、Ruby コード内で fork を使用しようとしても同様の結果が得られましたが、プロセスが正しく機能しません。

何が起こっている可能性がありますか?

LinuxとRuby 1.9を使用しています

4

1 に答える 1

2

あなたのアプリケーションについてよく知らなくても、STDIN での入力待ちで立ち往生していると思います。それを確認する簡単な方法の 1 つは、おそらく次のように、一部のファイルをプロセスの STDIN にリダイレクトすることです。

ruby ./my_process < /dev/zero &
于 2012-07-31T14:17:22.887 に答える