Asio で 2 つのデバイス/ストリームをブリッジするエレガントな方法はありますか?

StackOverflow https://stackoverflow.com/questions/1249750

質問

2 つのストリーム指向 I/O オブジェクトがあるとします。 アシオ, 、あるデバイスから別のデバイスに双方向でデータを転送する最も簡単な方法は何ですか?これはできるでしょうか boost::iostreams::コンビネーション または ブースト::iostream:コピー 多分?それとも、両端でデータを待ってから、それをもう一方のストリームに書き出すという手動のアプローチの方が良いのでしょうか?言い換えれば、どのように活用するかというと、 ブースト そして アシオ 最小限のコードを生成するには?

サンプル アプリケーションは、次のリクエストに従ってシリアル ポートと TCP ソケットの間でストリーミングします。 この質問.

役に立ちましたか?

解決

標準の C++ ストリームでは次のことができますが、Asio では同様のことができないでしょうか?

// Read all data from in and write to out.
void forward_data( std::istream& in, std::ostream& out )
{
  out << in.rdbuf();
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top