主题:请问个有关BCB多线程TCP服务端的程序
while(1){
SOCKET sockClient = accept(sockServer,(SOCKADDR*)&addrClient,&len);
if(sockClient!=SOCKET_ERROR||sockClient!=INVALID_SOCKET)
{
char recvBuff[100];
recv(sockClient, recvBuff, 100, 0);
AnsiString msg = (AnsiString)recvBuff;
if(msg=="exit"){
printf("%s","finish application!");
closesocket(sockClient);
}else{
// 如果msg不是exit就新开个Thread来处理业务操作
PhoneSocketThread *myThread = new PhoneSocketThread(sockClient,true);
}
}
}
我遇到的问题是:不管客户端传什么字符串过来都是执行else代码段,如果不这样做的话,我不知道如何退出while(1){}循环。不知道我这样做是否妥当?谢谢!
if(msg=="exit"){//这段代码无法执行,即使客户端传了"exit"过来还是无法执行
}
SOCKET sockClient = accept(sockServer,(SOCKADDR*)&addrClient,&len);
if(sockClient!=SOCKET_ERROR||sockClient!=INVALID_SOCKET)
{
char recvBuff[100];
recv(sockClient, recvBuff, 100, 0);
AnsiString msg = (AnsiString)recvBuff;
if(msg=="exit"){
printf("%s","finish application!");
closesocket(sockClient);
}else{
// 如果msg不是exit就新开个Thread来处理业务操作
PhoneSocketThread *myThread = new PhoneSocketThread(sockClient,true);
}
}
}
我遇到的问题是:不管客户端传什么字符串过来都是执行else代码段,如果不这样做的话,我不知道如何退出while(1){}循环。不知道我这样做是否妥当?谢谢!
if(msg=="exit"){//这段代码无法执行,即使客户端传了"exit"过来还是无法执行
}