现在是时候看看我们的第一个Boost.Asio异步tcp服务器了。这是我最后一次不使用命名空间和类型别名。下一次我会使用,因为名称变得太长了,而且你已经知道事情是从哪里来的。 这次,我们的服务器执行以下操作: - 在端口15001上监听传入
现在是时候看看我们的第一个Boost.Asio异步tcp服务器了。这是我最后一次不使用命名空间和类型别名。下一次我会使用,因为名称变得太长了,而且你已经知道事情是从哪里来的。
这次,我们的服务器执行以下操作:
- 在端口15001上监听传入的TCP连接。
- 接受传入连接。
- 从连接中读取数据,直到"见到"换行字符"\n"为止。
- 将接收到的数据(或字符串)写入标准输出。
- 关闭连接。
看看完整的示例。下面我们将其分解成若干部分,看看每个部分中发生了什么。为了清晰起见,省略了错误处理。稍后我们会讨论错误处理。
#include #include #include class session : public std::enable_shared_from_this{public: session(boost::asio::ip::tcp::Socket&& socket) : socket(std::move(socket)) { } void start() { boost::asio::async_read_until(socket, streambuf, '\n', [self = shared_from_this()] (boost::system::error_code error, std::size_t bytes_transferred) { std::cout << std::istream(&self->streambuf).rdbuf(); }); }private
来源地址:https://blog.csdn.net/Knowledgebase/article/details/132859995
--结束END--
本文标题: 5、boost asio 教程---异步TCP服务器
本文链接: https://lsjlt.com/news/411681.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0