2 つのプロセスが通信しています。最初のものはパイプまたは fifo にデータを書き込み (私は両方を試しました)、2 つ目はその内容を読み取ります。送信されるデータは現在、センサーから直接送られる 6 つのフロートであるため、頻繁にアップロードする必要があります (10Hz)。
問題は、データを読み取るプロセスがやや「重く」、十分な速さで読み取れない可能性があることです。パイプがいっぱいになり、プログラムの終了まで読み取りが遅れます。
このような遅延は許容できないため、書き込み部分でパイプがいっぱいかどうかを検出できます (その場合、間違っていれば訂正してください。データを書き込むのに十分なスペースができるまで待ちます)。このような検出が可能な場合、パイプの内容をクリアして、読み取り部分がすぐに最近のデータを受け取り、古いスタッドでいっぱいのパイプ全体を通過する必要がないようにするにはどうすればよいですか?
要するに、データのパイプを空にする方法はありますか (閉じて再度開く必要がないことはプラスになります)。
どうもありがとう、