1 Star 0 Fork 0

杭电码农-NEO / HTTP-Web Server Project

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
main.cpp 1.04 KB
一键复制 编辑 原始数据 按行查看 历史
杭电码农-NEO 提交于 2024-05-03 10:41 . 提交修改,云服务器过期
#include "HttpServer.hpp"
#include<memory>
static void Usage(string str)
{
cout << "Usage: " << str << " port " << endl;
}
void MyDaemon()
{
//1. 忽略信号,SIGPIPE,SIGCHLD
signal(SIGPIPE,SIG_IGN);
signal(SIGCHLD,SIG_IGN);
//2. 不要让自己成为组长
if(fork()>0) exit(0);//子进程绝对不是组长
//3. 调用setsid
setsid();
//4. 标准输入,标准输出,标准错误的重定向,守护进程不能直接向显示器打印信息(独立的一个进程)
/* int devnull = open("dev/null",O_RDONLY | O_WRONLY);
if(devnull > 0)
{
/* dup2(devnull,0);
dup2(devnull,1);
dup2(devnull,2); */
/*dup2(0,devnull);
dup2(1,devnull);
dup2(2,devnull);
}
close(devnull); */
}
int main(int argc, char *argv[])
{
if (argc != 2)
{
Usage(argv[0]);
exit(4);
}
int port = atoi(argv[1]);
MyDaemon();
std::shared_ptr<HttpServer> http_server(new HttpServer(port));
http_server->InitServer();
http_server->Loop();
return 0;
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/NEO_kou/http-web-server-project.git
git@gitee.com:NEO_kou/http-web-server-project.git
NEO_kou
http-web-server-project
HTTP-Web Server Project
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891