18.3.12 SHTTPD主函数的实现
服务器SHTTPD的主函数代码如下,主要功能为挂接SIGINT信号、初始化参数配置、服务器套接字初始操作,然后执行工作调度任务。
int main(int argc, char *argv[])
{
signal(SIGINT, sig_int); /*挂接信号SIGINT*/
Para_Init(argc,argv); /*参数初始化*/
int s = do_listen(); /*套接字初始化*/
Worker_ScheduleRun(s); /*任务调度*/
return 0;
}
信号SIGINT的处理函数,将在用户按下Ctrl+C键后,调用调度终止函数,终止工作线程和调度线程,退出进程。
/*SIGINT信号截取函数*/
static void sig_int(int num)
{
Worker_ScheduleStop();
return;
}