gpt4 book ai didi

boost-asio - boost::asio 是否等同于 Poco::Net?

转载 作者:行者123 更新时间:2023-12-04 21:58:29 30 4
gpt4 key购买 nike

我是使用 boost 的项目的一部分作为一个 C++ 库。现在我们要使用 SMTP/POP3/SSL/HTTP/HTTPS。我在 Poco::Net 中检测到几个拟合类和函数

  • Poco::Net::POP3ClientSession
  • Poco::Net::MailMessage
  • Poco::Net::SMTPClientSession
  • Poco::Net::HTTPSClientSession
  • Poco::Net::HTTPRequest

  • 我在 boost::asio 中找不到任何等价物.在我做出最终决定之前,我想问问社区,我是否正确,或者 boost 中是否有类似的东西...

    最佳答案

    虽然有一些重叠,但 Boost.Asio 并不等同于 POCO 的 Net 库。更高级别的协议(protocol)不在 Boost.Asio 的范围内。 rationale该库明确指出,它是一个框架,而不是一个框架,旨在支持其他提供更高抽象级别的库的开发,例如 HTTP。此外,我不知道有任何 Boost 库(已发布或候选)为更高级别的协议(protocol)提供支持。一种选择可能是cpp-netlib该库仍在开发中,旨在为更高级别的协议(protocol)提供支持。但是,它目前只实现了一个 HTTP 客户端和服务器。

    如果您正在寻找更高级别的协议(protocol)支持,那么 POCO可能是一个很好的候选人。但是,在做出决定之前,我建议考虑其他几点:

  • 支持:在 StackOverflow 似乎比 更活跃.其他支持途径包括Boost Mailing ListPOCO fourms .
  • Boost.Asio 被设计成一个工具包并利用通用编程。虽然 POCO 通过非框架方式提供了一些功能,但一些更高级别的功能仅通过框架提供。因此,它引入了与应用程序更紧密的耦合,并可能影响应用程序的设计。
  • 两个库之间的异步编程略有不同。在 POCO 中,回调与事件类型相关联,允许为单个订阅多次执行回调。另一方面,Boost.Asio 将回调关联到单个操作,导致对于给定操作最多调用一次回调。这种差异可能会对异步链的设计和流动方式产生影响。
  • 关于boost-asio - boost::asio 是否等同于 Poco::Net?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16120142/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com