Fiberized.IO通用C++网络库
Fiberized.IO 是一个基于 Fiber 和 Async I/O 的通用 C++ 网络库。
在上层,Fiberized.IO 提供一个兼容 C++11 thread 和 iostream 的“阻塞式”API;在底层,Fiberized.IO 通过将阻塞式 IO 映射为异步 IO 和 kernel/userland 混合调度的 Fiber,在最大化程序的运行效率的同时保持用户的程序清晰简单易于理解。
除基本的功能之外,Fiberized.IO 还包含了一个完整的HTTP服务框架,一个 Redis 客户端,以及 Apache Thrift 的支持,未来计划支持常见的数据库如 MySQL 和 MongoDB 等。
一个 HTTP 服务器示例代码:
#include <fibio/fiberize.hpp> #include <fibio/http_server.hpp> using namespace fibio::http; bool handler(server::request &req, server::response &resp) { resp.body_stream() << "<HTML><BODY><H1>" << req.params["p"] << "</H1></BODY></HTML>" << std::endl; return true; } int fibio::main(int argc, char *argv[]) { server svr(server::settings{ route(path_("/*p") >> handler), 23456, }); svr.start(); svr.join(); }
评论
liblacewingC/C++网络库
liblacewing是一个跨平台的、高级的网络库,旨在提供一些直接的类用于Socket通讯,支持IOCP,epoll,和kqueue
liblacewingC/C++网络库
0
MuduoLinux C++ 网络库
muduo是一个基于Reactor模式的现代C++网络库,它采用非阻塞IO模型,基于事件驱动和回调,原生支持多核多线程,适合编写Linux服务端多线程网络应用程序。视频连接:http://v.youk
MuduoLinux C++ 网络库
0
LacewingC/C++高级网络库
liblacewing是一个跨平台的高级网络库,用于C和C++。旨在提供一组直观的Socket通讯类,侧重于稳定性和平台优化(支持IOCP,epollandkqueue)
LacewingC/C++高级网络库
0
libtnet高性能c++网络库
libtnet是一个用c++编写的高性能网络库,它在设计上面主要参考tornado,为服务端网络编程提供简洁而高效的接口,非常易于使用。一个简单的Echo例子:void onConnEvent(con
libtnet高性能c++网络库
0