これは非常に単純な質問かもしれません: Apache ポータブル ランタイム ライブラリの apr_file_namedpipe_create() 関数を使用して名前付きパイプを作成し、その名前付きパイプを子親通信に使用する方法。子プロセスは apr_proc_create() 関数を使用して作成され、Apache/親プロセスによって送信された入力名前付きパイプにデータが現れるのを待ちます。
呼び出す API の順序がわかりません。私はこのようにすることを考えることができますが、まだ混乱しています。
apr_procattr_t *attr;
apr_proc_t newproc;
const char *progname;
const char *args[100];
apr_file_namedpipe_create("/tmp/ipipe", 0666, p);
apr_procattr_create(&attr, p)
apr_procattr_io_set(attr, APR_CHILD_BLOCK, APR_CHILD_BLOCK, APR_CHILD_BLOCK)
apr_procattr_cmdtype_set(attr, APR_PROGRAM_PATH);
apr_proc_create(&newproc, progname, args, NULL, attr, p);
親プロセス/Apache からのすべての入力に「/tmp/ipipe」を使用するようにその子プロセスを指定するにはどうすればよいですか? 子プロセスでは /tmp/ipipe から読み込んでいますが、これで十分でしょうか? または、子プロセスがその名前付きパイプを入力に使用することもここで指定する必要がありますか? その場合、 apr_procattr_io_set() のパラメーターは何になりますか、またはこれを行うための他の関数がありますか?
APR にはドキュメントやサンプル コードがほとんどないように見えるため、Google で検索できませんでした。ヒントや提案はありますか?
Linux環境で実行しています。