Asio是否仍然与Boost分开开发,或Boost.Asio是唯一仍在更新的版本?
在Asio网站上,他们谈到两个版本都有好处,而且Asio比Boost更新的频率更高.然而,该网站上最新的开发版本是2011年3月发布的1.5.3,而2013年2月发布的最新版Boost 1.53包括Asio 1.8.3,自1.5.3以来发生了大量变化.
Asio网站在没有通知的情况下被放弃了,仅支持Boost-only更新,或者它已移至我未找到的某个位置.有谁知道发生了什么?
我问的原因是我试图从我的项目中删除Boost,而Boost.Asio是我目前使用的唯一Boost库.Asio本身就是一个只有头文件的库,但Boost.Asio引入了其他几个未使用的Boost库(System,Regex,Date_Time).
我愿意切换到另一个轻量级套接字库,但还没有找到一个像Asio一样好的(在低依赖性和使用本机平台iocp/epoll方法方面).
Asio是单独开发的,然后加强并合并到Boost.Asio中.但是,您可能无法根据正在使用的功能和编译器从项目中删除Boost.从Asio 1.10.0开始,Asio尝试使用等效的C++ 11标准库而不是Boost.
Asio基本上是Boost.Asio:
在1.10.0之前的Asio版本中可能存在Boost依赖关系.这些依赖关系通常在模板中引入; 因此,依赖性可能仅在应用程序使用特定功能时发生.很容易忽略Asio和Boost.Asio页面上的微妙细节,它指出:
Asio仅限头文件,并且对于大多数用途不需要链接任何Boost库.当使用C++ 11和最新版本的gcc,clang或MSVC时,可以通过定义
ASIO_STANDALONE
编译时间来独立于Boost使用Asio .
通常,以下功能引入了依赖项:
std::chrono
将使用的C++ 11版本.read_until()
使用正则表达式的操作取决于Boost.Regex.可能值得考虑使用:
小智 5
我通过电子邮件询问了非增强版本的维护位置,作者克里斯托弗·科尔霍夫(Christopher Kohlhoff)说他在github上维护了该版本。
https://github.com/chriskohlhoff/asio
今天看它似乎不存在1.8.3,或者至少它没有被标记,所以可能是他停止了维护该仓库。
归档时间: |
|
查看次数: |
6018 次 |
最近记录: |