修复日志处理,优化磁盘io,优化退出流程
This commit is contained in:
14
c/main.c
14
c/main.c
@ -34,8 +34,9 @@ int main()
|
||||
int port = (int)toml_int_in(server,"list_port").u.i;
|
||||
//加载配置文件,读取端口
|
||||
log_manager *logsmanager=(log_manager*)malloc(sizeof(log_manager));
|
||||
//创建日志管理器与定时清理线层
|
||||
init_loger(logsmanager);
|
||||
|
||||
pthread_create(&logsmanager->pid,NULL,logsmanager->clear_log,logsmanager);
|
||||
Ctl *teml = init_tem(logsmanager);
|
||||
teml->config = server;
|
||||
//初始化终端对象
|
||||
@ -45,8 +46,8 @@ int main()
|
||||
netm *networkmanager = (netm*)malloc(sizeof(netm));
|
||||
init_networkmanager(networkmanager,fifo,logsmanager,port);
|
||||
//初始化网络管理器对象
|
||||
pthread_t network_id;
|
||||
pthread_create(&network_id,NULL,networkmanager->run_network,(void*)networkmanager);
|
||||
|
||||
pthread_create(&networkmanager->pid,NULL,networkmanager->run_network,(void*)networkmanager);
|
||||
//启动网络监听与线程池,并加载插件
|
||||
alres *resource = (alres*)malloc(sizeof(alres));
|
||||
resource->loger = logsmanager;
|
||||
@ -57,8 +58,13 @@ int main()
|
||||
teml->run(teml,fifo);
|
||||
|
||||
//启动终端
|
||||
pthread_join(network_id,NULL);
|
||||
log_manager_stop(logsmanager);
|
||||
pthread_join(logsmanager->pid,NULL);
|
||||
logsmanager->pid = -1;
|
||||
|
||||
//等待网络管理器进程结束
|
||||
pthread_join(networkmanager->pid,NULL);
|
||||
close(fifo[1]);
|
||||
return 1;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user