【发布时间】:2013-01-11 01:47:57
【问题描述】:
我正在开发一个多客户端聊天项目。
这是我的代码:
struct RecvDataModel
{
int sockAddr;
char *inData;
};
void *ProcessData(void *arg);
void Client::Recv(int sockAddr, char *inData)
{
RecvDataModel outData;
outData.sockAddr = sockAddr;
outData.inData = inData;
pthread_t rThr;
pthread_create(&rThr, NULL, ProcessData, (void*)&outData);
}
void *ProcessData(void *arg)
{
RecvDataModel *inData = (RecvDataModel*)arg;
cout << inData->inData << endl;
return 0;
}
如果 sockAddr(在 Client::Recv 中)等于“55”,则 ProcessData 的 cout 函数写为“31784736”,如果等于“0”,则 cout 的“5120”
这是我的大问题!没有这个我不能继续! (我正在使用eclipse C++) 有什么问题?我已经看过一些这样的示例项目:Link >>>
【问题讨论】:
标签: c++ struct pthreads arguments