• ベストアンサー

C++でシリアル受信処理を教えて

表題のとおりC++でシリアルで受信処理を作成しようと思っています。 2つのスレッドで、片方のスレッドでデータを受信し、もう片方のスレッドでデータを解析、 という具合に受信と解析を同時並行して行うようなプログラムを組みたいのですがうまく いきません。 具体的なソースの書き方、またはそれらが記載されているサイトをご存知の方は 教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

両者のスレッド間通信はどうやってるのかしら。 多くは producer-consumer-queue を使うものだけど。 1) queueを用意する、最大要素数はテキトーに決めて。 2) 受信スレッドは、”データを受信したら queueにpushする”を繰り返す。 3) 解析スレッドは 、”データをqueueから取り出し解析する。queueが空ならそこで待つ”を繰り返す。 2 と 3 が並行動作すれば、受信中に解析できますな。

関連するQ&A