From: "KISHIMOTO, Makoto" Date: 2011-10-12T11:18:39+09:00 Subject: [ruby-dev:44595] ext/pty spec きしもとです > 同じことができるというのは事実誤認です。 > > 少なくとも PTY.open と spawn には制御端末を設定する機能がありません。 わかりました。deprecated 以降についての提案は一旦ひっこめます。 あと、るりまの記述を確認していったところ、確認しきれなかったので、 どなたかわかるかたに質問したいのですが、 > 子プロセスの状態を監視するために SIGCHLD シグナルを捕捉します。 この記述が正しいのはいつ頃まででしょうか? > 子プロセスが終了したり停止した場合には、例外 PTY::ChildExited が発生します。 ブロック付きの場合、1.8 と 1.9.1 r33056 では発生しますが、1.9.2 r32926 では 発生しません。ブロックなしの場合、1.9.1 でも発生しません。 > この間、すべての SIGCHLD が PTY モジュールのシグナルハンドラに捕捉されるので、 > サブプロセスを生成する他のメソッド(Kernel.#system や IO.popenなど)を使うと、 > 予期しない例外が発生することがあります。 1.8 でも確認できませんでした。 protect_signal が obsolete となったのは r1666 という非常に古いリビジョン のようなので、もしかしてだいぶ古いことでしょうか?