以下のアプリケーションでは、スレッド 1 がファイルから読み取って FIFO に入れ、次にスレッド 2 がその FIFO を読み取ってデータを処理し、ネットワーク ソケットに送信します。スレッド 3 はネットワーク ソケットからデータを受信し、結果を file2 に保存しますが、時々受信したデータはスレッド 2 で再処理する必要があるため、問題は何をするのが最善かということです。FIFO に再度送信する必要がありますか? または、スレッド 3 とスレッド 2 の間に別の fifo がありますか? それともどちらでもない?
File1 --> スレッド 1 --> FIFO --> スレッド 2 --> ネットワークソケット
ネットワークソケット --> スレッド 3 --> ファイル 2
ところで、上記は私が持っているもののサンプルです。実際のプログラムには、FIFOから読み取られてネットワークに送信される多くのスレッドがあり、この方法でFIFOを使用するとレイテンシが発生するか、ボトルネックになるかはわかりません。
ありがとうございます。