boost :: asio是否提供了一个流类,用于简单的同步/异步读/写操作?
例如
simple_stream s;
std::size_t bytes_written = s.write_some("test");
std::size_t bytes_read = s.read_some();
我想创建一些模拟端口来替换我的串口进行测试,这样的流有助于连接在Sync / Async-Read / Write流上运行的组件。我无法从文档中找到任何相关内容,我也想在异步操作中支持协程,这似乎需要使用asio的detail :: async_result_init。如果可能的话,如果可行,我宁愿避免写这个。
编辑:
我的电脑和其他设备之间有串行通信。 它们与特定协议通信。 PC使用PacketDispatcher对象来侦听AsyncReadStream(在我的情况下是serial_port)并使用解析器来检测使用给定回调分派的有效包。我有另一个类将命令发送到AsyncWriteStream(在我的例子中是serial_port)。现在我想在我的电脑中模拟设备,我想要一个简单的AsyncStream来替换上面给出的串口。