东南教育网您的位置:首页 >资讯 > 新知 >

beginthreadex(beginthreadex)

导读 大家好,小金来为大家解答以上的问题。beginthreadex,beginthreadex这个很多人还不知道,现在让我们一起来看看吧!1、1,错误,应该首先初始化

大家好,小金来为大家解答以上的问题。beginthreadex,beginthreadex这个很多人还不知道,现在让我们一起来看看吧!

1、1,错误,应该首先初始化临界区,然后再使用.2,需要判断线程都退出后再删除临界区.3,最好使用_beginthreadex来创建线程.4,Sleep(4000);使用的并不好,修改为等待两个线程结束。

2、5,tickets变量使用volatile来修饰。

3、修改后的代码如下#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:"。

本文到此分享完毕,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!