多语言展示
当前在线:1997今日阅读:19今日分享:20

如何通过boost实现简单的客户服务端通讯

boost::asio提供了网络库,封装了网络操作的很多细节,因此,很容易可以构建一个简单的客户服务端的通信架构,本文将说明如何编写实现一个简单的客户服务端。
工具/原料

boost

方法/步骤
1

首先实现处理客户端会话的函数,其入参是一个共享智能指针的tcp::socket

2

接着实现服务端,创建监听的套接字,然后使用accept等待客户端的连接,如果有客户端连接,那么启动线程,然后执行上一个步骤实现的客户端会话函数

3

实现客户端连接的回调函数,该函数判断是否连接成功,如果连接成功,那么可以与服务端进行通信

4

实现客户端,创建客户端连接的套接字,然后执行async_connect进行异步连接

5

通过线程的方式启动客户端和服务端

6

接着记得要调用join等待服务线程和客户端线程的退出,防止资源泄露

7

最后启动运行,其输出的信息如下所示,说明客户端连接服务端成功

注意事项
1

喜欢经验欢迎点赞投票!

推荐信息