asio编写异步服务器(C++asio网络库相关)

enable_shared_from_this:表示在类方法里需要把自己包装成智能指针
using pointer = boost::shared_ptr<tcp_connection> 等价于 typedef boost::shared_ptr<tcp_connection> pointer
以下两种生成智能指针的写法,第一种return内存分配了两次,第二种有些地方是不能用的,如构造函数字义成了私有类型
在这里插入图片描述
通过async_write写入数据,handle_write回调函数,用shard_from_this防止类失效
在lambda函数中调用自身指针可以用move提高效率,也可以直接用值的拷贝传入值

handle_accept:连接成功后的回调

start_accept()连接新的客户端

以下关于asio异步服务器完整代码:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发布了137 篇原创文章 · 获赞 33 · 访问量 1561

猜你喜欢

转载自blog.csdn.net/qq_39885372/article/details/104069529