看不懂这段代码是什么意思
其中一部份代码是这样的,
这是一个socket编程的 监听函数
CServerListenThread::CServerListenThread(int Port)
{
// Save the parameters
m_Port= Port;
m_ShuttingDown = FALSE;
m_Thread= NULL;
m_ExitCode= 0;
// Create the listen socket
DWORDrc;
if(rc = SockListen(m_Port, m_ListenSock))
{
m_ExitCode = rc;
return;
}
// Start the thread
m_Thread= CWorkerThread::BeginThread(Start, this);
}
这里m_Thread= CWorkerThread::BeginThread(Start, this);这句进入到另一个下面的函数,
在监听函数下面用这句有什么效果?(不是指调用BeginThread这个函数)
因为书上的socket编程时,listen函数只用了一句话,然后是循环接收服务端的数据,
CWorkerThread* CWorkerThread::BeginThread(AFX_THREADPROC pProc, LPVOID pParam)
{
// Start the thread
CWorkerThread* Thread;
Thread = new CWorkerThread(pProc, pParam);
if(!Thread->CreateThread(/*CREATE_SUSPENDED*/))
{
delete Thread;
return NULL;
}
// Return the thread pointer
return Thread;
}
不明白这个线程是干什么的?在它的CPP文件里面也没看到创建线程,
哪里有这方面的书可以看?
[解决办法]
这是一个工作者线程啊。就是那个start函数
[解决办法]
就是有连接就开一个线程。