您的位置首页百科知识

如何强制关闭beginthreadex创建的线程

如何强制关闭beginthreadex创建的线程

的有关信息介绍如下:

如何强制关闭beginthreadex创建的线程

1,错误,应该首先初始化临界区,然后再使用.2,需要判断线程都退出后再删除临界区.3,最好使用_beginthreadex来创建线程.4,Sleep(4000);使用的并不好,修改为等待两个线程结束。5,tickets变量使用volatile来修饰。修改后的代码如下#include#includeusing namespace std;volatile int tickets = 100;CRITICAL_SECTION sp;DWORD WINAPI ThreadProc( LPVOID lpParameter ){ WaitForSingleObject((HANDLE)lpParameter, INFINITE); Sleep(0); while(TRUE) { EnterCriticalSection(&sp); if(tickets>0) { cout0) { cout<<"Thread2 Sell The ticket:"<