1.创建线程并返回线程句柄,AcceptThread为线程函数
HANDLE hThreadAccept;
unsigned long ulThreadId;
hThreadAccept = CreateThread(NULL, 0, AcceptThread, NULL, 0, &ulThreadId);
2.在临界区操作临界资源,下面代码为线程函数AcceptThread中的部分代码
typedef list<CClient*> CLIENTLIST; //客户端链表
CLIENTLIST clientlist; //管理连接的链表--->临界资源
CRITICAL_SECTION csClientList; //保护链表的临界区对象
EnterCriticalSection(&csClientList);//进入临界区,临界资源clientlist每次只允许一个线程访问