龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

VC中CWinThread类以及和createthread API的区别分析(3)

时间:2014-10-25 02:25来源:网络整理 作者:网络 点击:
分享到:
ASSERT(pThreadClass != NULL); ASSERT(pThreadClass-IsDerivedFrom(RUNTIME_CLASS(CWinThread))); CWinThread* pThread = (CWinThread*)pThreadClass-CreateObject(); if (pThread == NULL) AfxThrowMemoryExceptio

        ASSERT(pThreadClass != NULL);
        ASSERT(pThreadClass->IsDerivedFrom(RUNTIME_CLASS(CWinThread)));
        CWinThread* pThread = (CWinThread*)pThreadClass->CreateObject();
        if (pThread == NULL)
                AfxThrowMemoryException();
        ASSERT_VALID(pThread);
        pThread->m_pThreadParams = NULL;
        if (!pThread->CreateThread(dwCreateFlags|CREATE_SUSPENDED, nStackSize,
                lpSecurityAttrs))
        {
                pThread->Delete();
                return NULL;
        }
        VERIFY(pThread->SetThreadPriority(nPriority));
        if (!(dwCreateFlags & CREATE_SUSPENDED))
                VERIFY(pThread->ResumeThread() != (DWORD)-1);
        return pThread;
}

主要创建函数是

复制代码 代码如下:
pThread->CreateThread(dwCreateFlags|CREATE_SUSPENDED, nStackSize,lpSecurityAttrs))

也就是

复制代码 代码如下:
CWinThread::CreateThread

希望本文所述对大家的VC程序设计有所帮助。

精彩图集

赞助商链接