C++网络编程的学习(9-13)
摘要:文章来源: 恋恋风辰的编程笔记 https://gitbookcpp.llfc.club/sections/cpp/boost/asio03.html boost环境配置 网络编程基本流程 网络编程的基本流程对于服务端是这样的 服务端 1)socket 创建socket对象。 2)bind 绑定本机
阅读全文
9-14
摘要:读写操作的代码片段(p3) 同步服务器客户端demo(p4)
阅读全文
9-15
摘要:c++中没有闭包,所以需要自己实现一个 利用c++11中的智能指针 把一个智能指针传给一个对象,如果对象不被释放掉,那么智能指针也不会释放掉。 比如: 把一个智能指针传递给一个回调函数,假设回调函数会放到一个回调函数队列中,那么回调函数就会是一个函数对象,而这个回调函数没有被释放之前,智能指针也不会
阅读全文
9-17
摘要:粘包原因 1 客户端的发送频率远高于服务器的接收频率,就会导致数据在服务器的tcp接收缓冲区滞留形成粘连,比如客户端1s内连续发送了两个hello world!,服务器过了2s才接收数据,那一次性读出两个hello world!。 2 tcp底层的安全和效率机制不允许字节数特别少的小包发送频率过高,
阅读全文
9-19
摘要:利用beast实现http服务器 (up讲的有手写http服务器,但是我没看,直接看的利用beast实现http服务器) 配置jsoncpp 文件一直链接不上,用了好长时间,所以利用beast实现http服务器也没有看 用了好几个小时才搞好: 下载的文件打开后的运行库 和 我自己的vs的运行库不一致
阅读全文
9-20 beast实现http服务器
摘要:点击查看代码 void process_request() { response_.version(request_.version()); response_.keep_alive(false); switch (request_.method()) { case http::verb::get:
阅读全文