既然主要还是算法分解型的,每个文件里面都是这些分解后的结果,粗略介绍一下这个程序的分解情况,尝试将亮点呈现出来,同时指明改进的想法和好处。
先看一下main函数:
int main(void)
{
.......
init_system(); //系统初始化
InitPassiveSock(); //监听套接字初始化
pthread_create(&ReceID, NULL, (void *)&RecePross, NULL); //创建接收处理线程
while(1){
QuerySocketsMsg(); //处理socket
.......
}
.......
}
所在文件:main.c,各个过程完成如下功能:
一. 系统初始化(init_system):
代码:
void init_system(void)
{
init_para(); // 1
init_serial(); // 2
init_ethernet(); // 3
......
}
过程:
1. 读取配置文件,结果存入全局数据结构。
2. 初始化串口通信相关数据结构,打开串口,创建串口处理线程等。
3. 初始化tcp通信相关数据结构。(仅此而已)
这一部分比较简单,不做更详细分解。下一部分:二. 监听套接字初始化 |