C で子プロセスを実行していますが、一時停止してから同じ子プロセスを実行したいと考えています。私はこれが初めてなので、私の問題をより良い方法で説明する方法がよくわかりませんが、ここにショットがあります。
したがって、を使用して、別のプロセスが終了した後にプロセスを実行できることを知っていますwaitpid
。しかし、待機しているプロセスの作成時に、待機しているプロセスが存在しない場合はどうなりますか。したがって、この場合、待機しているプロセスを一時停止し、待機しているプロセスが作成されて終了すると、待機しているプロセスを再度実行するように呼び出すことを考えています。それで、あなたはこれをどのようにしますか?繰り返しますが、私はこれに慣れていないため、これが適切な方法であるかどうかはわかりません。
編集:私がやろうとしていること
子プロセスを使用しexecvp()
て並行してコマンドを実行しているため、 sequence がある場合sleep 1; sleep 1;
、合計スリープ時間は 1 秒になります。ただし、並列化しようとする場合があります。その場合、何とかファイルに入力した後にファイルを読み取るとecho blah > file; cat < file;
想定しています。したがって、私は完了するのを待たなければなりません。これにはさらに具体的な説明がありますが、通常、ファイルへの出力を伴うコマンドは、スクリプトの後半でファイルを読み取るコマンドによって待機する必要があると想定しています。cat
echo
echo
cat