修复日志处理,优化磁盘io,优化退出流程

This commit is contained in:
2026-01-29 12:10:36 +08:00
parent 65115e1a74
commit ee596a654d
10 changed files with 183 additions and 51 deletions

View File

@ -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;
}