boost asio 同步阻塞
来源:互联网 发布:广联达弱电预算软件 编辑:程序博客网 时间:2024/05/07 22:41
#include <array>#include <iostream>#include <boost/bind.hpp>#include <boost/smart_ptr.hpp>#include <boost/asio.hpp>#include <boost/thread.hpp>#include <boost/system/system_error.hpp>#include <boost/array.hpp>//using namespace boost::asio;const int max_length = 1024;using Socket = boost::asio::ip::tcp::socket;using SocketPtr = boost::shared_ptr<Socket>;void rw_handler(SocketPtr sock){try{for (;;){boost::array<char, max_length> data_buffer;boost::system::error_code error;size_t bytes_transferred = sock->read_some(boost::asio::buffer(data_buffer), error);if (error == boost::asio::error::eof){break;}else if (error){throw boost::system::system_error(error);}boost::asio::write(*sock, boost::asio::buffer(data_buffer, bytes_transferred));}}catch (std::exception &e){std::cerr << e.what() << "\n";}}void server(boost::asio::io_service &ios){boost::asio::ip::tcp::endpoint end_point(boost::asio::ip::tcp::v4(), 8888);boost::asio::ip::tcp::acceptor tcp_accceptor(ios, end_point);for (;;){SocketPtr sock(new Socket(ios));tcp_accceptor.accept(*sock);boost::thread(&rw_handler, sock).detach();}}int main(){boost::asio::io_service ios;server(ios);return 0;}
0 0
- boost asio 同步阻塞
- 同步客户端 boost asio
- boost::asio 的同步方式
- boost::asio 的同步方式
- boost::asio 的同步方式
- boost::asio编程-同步TCP
- boost::asio编程-同步UDP
- boost::asio阻塞等待与异步等待
- boost::asio设置同步连接超时
- boost::asio设置同步连接超时
- boost asio库 同步socket连接示例
- Boost Asio 1.56 学习之同步定时器
- boost::asio socket同步实现聊天示例
- boost::asio网络编程(同步)
- boost之asio同步io使用实例
- BOOST-计时器-同步、异步(boost::asio::deadline_timer)
- Boost asio--tcp server---1(无封装阻塞)
- Boost Asio
- 2015年亚太地区邮件营销表现
- [RFT]sample
- 国内网站常用的十大建站程序
- 矩阵论的总结
- struct 定义、使用及用extern声明时注意事项
- boost asio 同步阻塞
- 通过SQL得到某年内每周的开始日期和结束日期
- T-SQL学习之索引
- matlab中使用结构体
- linux 中cut的用法
- 异常:org.hibernate.DuplicateMappingException: Duplicate class/entity mapping
- DHCP 流程
- activity全屏设置
- SIFT算法详解