[源代码]求更简单的等待结束线程。解决办法

[源代码]求更简单的等待结束线程。OnBnClickedButtonStartThread()开启线程。OnBnClickedButtonEndThrad()等

[源代码]求更简单的等待结束线程。
OnBnClickedButtonStartThread()开启线程。
OnBnClickedButtonEndThrad()等待线程结束再执行。
求更简化的代码。

C/C++ code
bool g_bEndThread = false;HANDLE g_hEndThreadEvent = CreateEvent(NULL ,TRUE ,FALSE ,NULL);UINT __cdecl RunThread( LPVOID pParam ){    while (1)    {        Sleep(3000);        if (g_bEndThread)        {            SetEvent(g_hEndThreadEvent);            return 0;        }        TRACE("loop\n");    }}void CThreadEventDlg::OnBnClickedButtonStartThread(){    g_bEndThread = false;    ResetEvent(g_hEndThreadEvent);    AfxBeginThread(RunThread ,NULL);}void CThreadEventDlg::OnBnClickedButtonEndThrad(){    g_bEndThread = true;    WORD wRet = WaitForSingleObject(g_hEndThreadEvent ,INFINITE);    if (WAIT_TIMEOUT == wRet)    {        // time out    }    if (WAIT_OBJECT_0 == wRet)    {        MessageBox(_T("Thread end"));        return ;    }}


[解决办法]
就这几行代码,还想优化,用MFC是不太可能了
[解决办法]
起线程
HANDLE hThread=beginthread(xxxx);


停止线程

run=false;
WaitForSingleObject(hThread,INFINITE);


[解决办法]
线程里面


while(run){
xxxxxxxx...
};