我开始尝试通过阅读文档和示例代码来学习Boost::Asio。我发现很难理解,特别是因为模型似乎类似于协程。
然后,我决定学习协程,从这个cppcon演讲开始。在链接的演讲中,给出了以下一行作为协程使用示例。该示例是在2014年编写的,因此语法可能与C++20协程不匹配。
这感觉类似于Boost :: Asio的声明目标。然而,在Boost :: Asio文档的示例部分中,有一个将Boost :: Asio和C++20协程混合使用的示例。(我还不理解这个示例。)
Boost :: Asio和协程之间的关系是什么?协程是否替换了Boost :: Asio的某些部分?如果我不进行网络编程,是否仍应使用Boost :: Asio?
然后,我决定学习协程,从这个cppcon演讲开始。在链接的演讲中,给出了以下一行作为协程使用示例。该示例是在2014年编写的,因此语法可能与C++20协程不匹配。
auto conn = await Tcp::connect.Read("127.0.0.1", 1337)
这感觉类似于Boost :: Asio的声明目标。然而,在Boost :: Asio文档的示例部分中,有一个将Boost :: Asio和C++20协程混合使用的示例。(我还不理解这个示例。)
Boost :: Asio和协程之间的关系是什么?协程是否替换了Boost :: Asio的某些部分?如果我不进行网络编程,是否仍应使用Boost :: Asio?
std :: async
和发送器/接收器提案在这一切中扮演着什么角色?