文件名称:st_asio_wrapper——一组包装boost.asio的c/s框架(2.3版)
文件大小:35KB
文件格式:ZIP
更新时间:2015-10-26 10:18:10
boost asio boost.asio asio_wrapper
st_asio_wrapper是一组类库,功能是对boost.asio的包装(调试环境:boost-1.51.0),目的是简化boost.asio开发;
其特点是效率高、跨平台、完全异步(当然这是从boost.asio继承而来)、自动重连,数据透明传输,自动解决分包粘包问题(你可以像udp一样使用它);
注:只支持tcp协议;
教程:http://blog.csdn.net/yang79tao/article/details/7724514
2.3版更新内容:
消息(std::string包装)不再用boost::shared_ptr包装,之前有过度使用智能指针之嫌。效率上,std::string如果支持引用记数,或者编译器支持std::move语义,是没有损失的(因为也不存在内存的拷贝,反而省了智能指针使用上的开销),幸好vc支持std::move语义(虽然它不支持引用记数,linux则都支持)。这样带来一个问题,原来所有的接口中的boost::shared_ptr
【文件预览】:
st_asio_wrapper
----asio_client()
--------asio_client.cpp(878B)
----asio_server()
--------asio_server.cpp(3KB)
----performance_test()
--------asio_client()
--------性能测试说明.txt(5KB)
--------test_client()
----file_client()
--------file_client.cpp(3KB)
--------file_client.h(5KB)
----include()
--------st_asio_wrapper_server.h(15KB)
--------st_asio_wrapper_socket.h(20KB)
--------st_asio_wrapper_test_client.h(7KB)
--------st_asio_wrapper_client.h(2KB)
--------st_asio_wrapper_unpacker.h(2KB)
--------st_asio_wrapper_connector.h(2KB)
--------st_asio_wrapper_packer.h(1KB)
--------st_asio_wrapper_timer.h(3KB)
--------st_asio_wrapper_base.h(1KB)
----file_server()
--------file_server.cpp(930B)
--------file_server.h(5KB)