目录
网络线程控制代码
mainPro.c
#include <pthread.h>
#include "controlDevice.h"
#include "inputCommand.h"
struct InputCommand *pcommandHead = NULL; //定义指令工厂初始链表头
struct InputCommand *socketHandler = NULL;
void *socketReadThread(void *data) //“读取tcp端口指令线程”执行的函数
{
int n_read;
printf("Connect success\n");
while(1){
memset(socketHandler->command,'\0',sizeof(socketHandler->command));
n_read=read(socketHandler->fd,socketHandler->command,sizeof(socketHandler->command));
if(n_read == -1){
perror("read:");
}else{
printf("Get SocketCommand-->%s\n",socketHandler->command);
}
}
}
void *socketControlThread(void *data) //“网络控制线程”执行的函数
{
int c_fd; //文件描述符
struct sockaddr_in c_addr;
memset(&c_addr,0,sizeof(struct sockaddr_in));
int clen = sizeof(struct sockaddr_in);
pthread_t socketRead_thread; //线程里面套线程,网络连接后信息通信
socketHandler = findCommandByName("socket", pcommandHead);
if(socketHandler == NULL){
printf("find socketHandler error\n");
pthread_exit(NULL);
}
if(socketHandler->Init(socketHandler) < 0){ //“网络控制”功能初始化
printf("socketControl init error\n");
pthread_e