最近学习了一些boost asio的知识,所以决定解读一下官方文档。继而编写一个简单的聊天服务器。
在开始搞代码之前,得先弄清楚,这个玩意(boost asio)是干什么的。
Boost.Asio是一个跨平台的、主要用于网络和其他一些底层输入/输出编程的C++库。
关于网络处理已经有很多解决方案,但是Boost.Asio是目前为止最优的方案。它在2005年就被包含进Boost,然后被大量Boost的用户测试并使用在许多项目中,比如:Remobo(http://www.remobo.com),可以让你创建你自己的即时私有网络(IPN);libtorrent(http://www.rasterbar.com/products/libtorrent)),一个用于实现比特流客户端的库;PokerTH (http://www.pokerth.net),一个支持LAN和互联网对战的纸牌游戏。
Boost.Asio在网络通信、COM串行端口和文件上成功地抽象了输入输出的概念。你可以基于这些进行同步或者异步的输入输出编程。
依赖
Boost.Asio依赖于如下的库:
Boost.System:这个库为Boost库提供操作系统支持
Boost.Regex:使用这个库(可选的)以便你重载read_until()或者async_read_until()时使用boost::regex参数。
Boost.DateTime:这个库(可选的)为Boost.Asio中的计时器功能提供支持。
OpenSSL:这个库(可选的)为Boost.Asio中的SSL功能提供支持。
重要的宏
如果设置了BOOST_ASIO_DISABLE_THREADS,不管你是否在编译B

425

被折叠的 条评论
为什么被折叠?



