再度杯具,socket多线程编程!
现在是这样的,界面上就只有一个按钮 “监听” 按钮点击事件如下
int ListenClient()
{
int temp;
InitSocket();
memset(&Th_Socket,0,sizeof(Th_Socket));
if ((pthread_create(&Th_Socket,0,Socket_Thread,NULL))<0)
printf("Create Thread failure\n");
else
printf("Create Thread success\n");
return( Pt_CONTINUE );
}
为了防止点击按钮程序卡死,已经把监听循环放在新创建的线程 Th_Socket中了,现在问题出来了
假如现在有一个客户端连接过来,那我是就要在 Th_Socket 线程中再创建一个线程了来处理这个链接了是吧,而Th_socket继续监听,但是我在Th_Socket的线程函数中再创建线程 服务端不知道为什么取不到数据?
哪位大牛知道,或者说我的做法是不对的?? 请指正,谢谢!