C++ Boost Asio 简单聊天教程
Posted
技术标签:
【中文标题】C++ Boost Asio 简单聊天教程【英文标题】:C++ Boost Asio Simple Chat Tutorial 【发布时间】:2011-12-17 08:21:36 【问题描述】:我一直在看Boost Asio
的教程(官网)。但我发现他们的脖子很痛!有没有关于 asio 的简单教程?!我的意思是,一个简单的客户端-服务器聊天。 没有线程!!
谢谢!
【问题讨论】:
我没用过boost,但是Asio不是代表异步io吗?线程不是“重点”吗? @Seth 两种典型方案是“异步 I/O”与“线程同步 I/O”。通常,异步 I/O 的目的是避免每个连接使用一个线程,其中每个线程都使用同步 I/O。如果你愿意,当然可以同时使用线程和异步 I/O——但这会使事情变得更加复杂(我猜这是 OP 试图避免的)。 @Kia 一目了然,boost asio 库有点复杂和不透明,但据我所知,boost asio 教程不使用任何线程。这是不正确的吗? 以下是 BoostCon 2010 的一些 Asio 幻灯片:Getting Started with Asio @wjl - boost chat client example 在线程中运行其io_service
例程。
【参考方案1】:
http://www.boost.org/doc/html/boost_asio/tutorial/tutdaytime1.html
上面有什么问题吗?这就是我在使用 Boost::Asio 时学会使用它的地方。
【讨论】:
虽然我承认这是来自官方网站的内容,但它非常简单。【参考方案2】:这不是聊天教程,它使用线程,但本教程相当简单:
http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting-started-with-boostasio/
【讨论】:
【参考方案3】:这个blog 似乎是 ASIO 库的作者/作者,并且有很多关于它的额外信息。
例如:boost::asio vs asio、fork/join with asio。
【讨论】:
以上是关于C++ Boost Asio 简单聊天教程的主要内容,如果未能解决你的问题,请参考以下文章
C++ Boost ASIO:在类中初始化 io_context: