1 Star 0 Fork 0

钦某/Highly-concurrent-network-server

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Main.cc 1.03 KB
一键复制 编辑 原始数据 按行查看 历史
钦某 提交于 2025-06-14 23:34 +08:00 . 重构代码 Reactor反应堆 + Epoll多路转接
#include "Http.hpp"
#include "Reactor.hpp"
#include "Listener.hpp"
#include "Socket.hpp"
#include "Common.hpp"
#include "daemon.hpp"
#include <fstream>
void Usage(std::string proc)
{
std::cerr << "Usage: " << proc << " port " << std::endl;
}
void echo(std::shared_ptr<Socket> &sock, InetAddr &addr)
{
std::string mesg;
sock->Recv(&mesg);
std::cout << addr.StringAddr() << " : ";
std::cout << mesg << std::endl;
}
// ./server port
int main(int argc, char *argv[])
{
daemon(); // 守护进程化
if (argc != 2)
{
Usage(argv[0]);
exit(USAGE_ERR);
}
uint16_t port = std::stoi(argv[1]);
FileLogStrategy();
std::unique_ptr<Http> http = std::make_unique<Http>();
std::shared_ptr<Connection> Con = std::make_shared<Listener>(port);
Con->SetHander([&http](std::string &inbuffer) -> std::string
{ return http->HanderRequest(inbuffer); }); // TODO
std::unique_ptr<Reactor> R = std::make_unique<Reactor>();
R->AddConnection(Con);
R->Loop();
return 0;
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/wang-qin928/personal-web.git
git@gitee.com:wang-qin928/personal-web.git
wang-qin928
personal-web
Highly-concurrent-network-server
master

搜索帮助