私は他のスクリプトのキューを構築し、その起動を管理するはずのスクリプトを作成しています。マネージャースクリプトはどの子プロセスが終了したのかを知る必要があるため、キュー内で待機している他のスクリプトを起動できます。特定のプロセスを見つける方法はまだPHPで実行中です
「& echo $!」を追加しました。各子プロセスのプロセスIDを取得します。私は自分の子プロセスのプロセスIDを持っていますが、今は子プロセスがまだ実行されているかどうかを見つけるためにシステム "ps"プログラム呼び出しを使用しています。
私のスクリプトは現在UNIX系のシステムでしか動作していません。私は子供のPIDをウィンドウに取り込む方法を知らないし、私のスクリプトはWindowsの "tasklist"コマンドの出力をまだ解析していない。
これを達成する他の方法はありますか?子プロセスがまだ実行中であるかどうかを調べるためのPHP内のすべてのソリューション?他のプロセス(非ブロッキング)を開始し、まだ実行中であるかどうかを確認するソリューション。
Process Control APIを使用していますか? [http://us3.php.net/manual/en/book.pcntl.php] –
私はPCNTLを使うと思ったので、パイプを使って子プロセスの出力を読み込み、どちらが終了したのかを知ることができました。 PCNTL(他のプロセス制御拡張機能のようなもの)はすべて現在Unixのみです。だから私はバックグラウンド(UNIXのようなシステムのような子スクリプト名の最後に "&"を追加するような)に子プロセスを送るコマンドでexec()を使用しています。しかし、私は別の方法で、再びこれらのウィンドウで対処しなければなりません。 – farzad