Juman::Fork - 非同期に実行される子プロセスを生成する
use Juman::Fork; $p = new Juman::Fork( "sort" ); $p->print( "abc\n", "def\n", "ace\n" ); $p->close; while( $_ = $p->getline ){ print; }
Juman::Fork
は,指定されたコマンドを fork して子プロセスとして実行
し,その標準入力への書き込みと,標準出力及び標準エラー出力からの読み出
しを行うためのモジュールです.
Juman::Fork
オブジェクトを生成します.子プロセスとして実行するコマ
ンドを第1引数に指定し,第2引数以降にそのコマンドに対するコマンドライン
オプションを指定します.
Example:
$p = new Juman::Fork( "cat" "-n" );
引数によって指定された文字列を子プロセスの標準入力に渡すメソッドです.
第1引数によって指定された書式に従って,指定された文字列を子プロセスの 標準入力に渡すメソッドです.
getline()
子プロセスの標準出力及び標準エラー出力から1行分のデータを取り出すメソッ
ドです.timeout
によって設定された時間以内に読み出されなければ,
undef
を返します.
子プロセスの出力を getline
メソッドによって取り出す場合のタイムアウ
ト時間を設定するメソッドです.タイムアウト時間の初期値には変数
$Juman::Fork::TIMEOUT
の値が使われます.
alive()
子プロセスが残っているか調べるメソッドです.
pid()
子プロセスの PID を返すメソッドです.
close()
子プロセスの標準入力と連結されているパイプを閉じるメソッドです.
kill()
子プロセスを強制終了するメソッドです.
Perl-5.8 以降の場合,子プロセスとの通信には, encoding
プラグマで指
定された文字コードが使われます.
TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>