我创建了一个CWinThread线程
在InitInstance中的一个地方我需要再启动这个线程

BOOL CThTest::InitInstance()
{
// TODO:  perform and per-thread initialization here
while(TRUE)
{
TRACE("Thread RUNNING...\n");
                   ......
if ( !bTest )
{
    //如何在这里再启动这个线程
}
......
Sleep(10);
}
return TRUE;
}
应该怎么做
请教,谢谢!

解决方案 »

  1.   

    用下面这个函数来启动你的这个UI线程
    CWinThread* AfxBeginThread(
       CRuntimeClass* pThreadClass,
       int nPriority = THREAD_PRIORITY_NORMAL,
       UINT nStackSize = 0,
       DWORD dwCreateFlags = 0,
       LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL 
    );
      

  2.   

    BOOL CThTest::InitInstance()
    {
    // TODO:  perform and per-thread initialization here
    while(TRUE)
    {
    TRACE("Thread RUNNING...\n");
                       ......
    if ( !bTest )
    {
        AfxBeginThread(RUNTIME_CLASS(CMyWinThread));
    }
    ......
    Sleep(10);
    }
    return TRUE;
    }
      

  3.   

    谢谢,再请教你一个问题,其实我是想用这办法来解决SOCKET做SERVER时碰到多连接的问题http://expert.csdn.net/Expert/topic/2854/2854821.xml?temp=.4060938