void * SDL_WaitProcess(SDL_Process *process, size_t *datasize, int *exitcode);
| SDL_Process * | process | 完了を待つプロセス |
| bool | block | 真のときプロセスが完了するまでブロックする. 偽のときプロセスの状態を報告する |
| int * | exitcode | プロセスが終了した場合のプロセスの終了コードの代入先へのポインタ. NULLも可 |
この関数はプロセスの状態を得るために複数回呼ぶことができる.
exitcodeは, 正常に終了した場合はプロセスの終了コード, シグナルで終了した場合は負の数のシグナル, その他の場合は-255である.
プロセスが実行中の場合は値は変更されない.
プロセスを標準出力パイプ付き(pipe_stdioを真にした)で生成した場合, SDL_WaitProcess()を呼ぶ前に全てのプロセスの出力を読み取る必要がある.
これを行わないとプロセスは出力を永久に待ち続け, SDL_WaitProcess()が真を戻すことはない.