我对boost::asio::ip::tcp::socket
及相关的写入功能有疑问。从阅读TCP上的Wikipedia article可知,TCP包含确认消息和校验和。不幸的是,我无法在boost :: asio参考中找到任何有关此信息。据我了解,boost :: asio使用TCP的操作系统实现,它应该包含两个功能。boost :: asio :: write guarantee(ACK,Checksum)是什么?
我的问题是什么功能boost::asio::write
或boost::asio::async_write
保证时调用boost::asio::ip::tcp::socket
。那么,如果函数返回/回调函数被调用时没有错误,这意味着什么。我可以想象一些可能性:
- 基本上什么都没有,它只意味着程序告诉操作系统发送数据,但没有更多。
- 数据正在处理中,这意味着操作系统确认它已发送数据。
- 数据已到达,表示收到来自对方的确认消息。
- 数据已到达且未损坏,与3.相同,并且校验和相加。
如果它不是4.是否有一种方法来执行此使用boost :: asio(我的意思是在boost :: asio中,而不是自己实现它)?