名前付きパイプを使用して他のプロセスと通信する小さな Linux プログラムに、ハンドシェイク タイプのプロトコルを実装する必要があります。名前付きパイプを使用する場合のハンドシェイク型プロトコルの一般的な実装パターンを検索しましたが、何も上げることができませんでした...
これを行うパターンがないとは信じられません。誰かが可能なリソースを教えてくれますか?
完全な開示では、これは宿題ですが、このパターンを実装することは宿題ではありません。宿題コード内の問題を解決する必要があり、これが可能な解決策であると信じています。宿題は C++ で実装されていますが、言語は私には関係ありません。私は車輪を再発明したくないだけです....
更新:これは信号で実装される可能性があると感じています。
ハンドシェイクとは、子プロセスが親プロセスに、作業の準備ができていることを報告しますが、親が go シグナルを出すまで (パイプに何かがあったとしても) 先に進まないことです。私の作業理論では、多くの子プロセスが準備完了を報告し、親プロセスからの go シグナルを待つ必要があります。