Asio で 2 つのデバイス/ストリームをブリッジするエレガントな方法はありますか?
-
12-09-2019 - |
質問
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();
}
所属していません StackOverflow