私は現在、既存のプロプライエタリなソケット ラッパー コードを修正して、boost asio を使用し、重労働の一部を処理できるようにしています。おそらく、既存のコードの中で最も複雑な領域は、マルチキャスト処理コードです。このコードにより、中間層サーバー (1 つのシステムに多数存在する可能性があります) がクライアント ボックスにマルチキャストを送信できるようになり、クライアント ボックスはこれらを使用してシステムのユーザーに更新を提示します。
コードが複雑でエラーが発生しやすい理由は、多くの未加工のバッファを使用して、マルチキャスト ストリームを元の場所に従って再構成するためです。Boost.Asio でも同じ問題に対処する必要があるようです。そのため、行き詰まる前に、他の人がこの状況にどのように対処したかを聞いてみる価値があると思いました。
非常に一般的なユースケースのようです。私が今持っているようなコードなしでこの仕事をするのに役立つものはありますか? または、この種の作業を実行できる確立された C++ テンプレート (Boost またはその他) はありますか?
明らかに、自分で物事を簡単にし、未加工の配列の代わりに STL コンテナーを使用してパケットをバッファーに入れることができますが、このコードは非常に高性能である必要があります。大規模なインストールでは、膨大な数のパケットが飛び交うため、可能な限りリアルタイムに応答する必要があります。
この件についてご意見をお寄せいただきありがとうございます。
ジェイミー