本文中涉及到的部分內容也是參照網上學習的,在此作出說明。
參照:http://blog.csdn.net/oceanlucy/article/details/7345057
【AfxBeginThread】參數,如果只是簡單的傳【int】類型的
//多線程函數的定義;
UINT Thread1(int pParam)
{
int nSize = pParam;
//你的其他處理代碼。。。
return 0;
}
//多線程的使用部分;
int nSize = 50;
AfxBeginThread((AFX_THREADPROC)Thread1, (VOID*)nSize , THREAD_PRIORITY_NORMAL, 0, 0, NULL);
//定義一個全局的結構體;
typedef struct SthData
{
int iStr;
int iEnd;
}*pSthData;
//多線程函數的定義;
VOID Thread1(LPVOID lpParam)
{
//獲得結構體中的值;
SthData* pStcSthData = (SthData *)lpParam;
int iStr = pStcSthData->iStr;
int iEnd = pStcSthData->iEnd;
//你的其他處理代碼。。。
//最後記得刪除結構體的指針並指向NULL;
delete pStcSthData;
pStcSthData = NULL;
}
//多線程的使用部分;
pSthData pDataValue1 = new SthData;
memset(pDataValue1, 0x00, sizeof(SthData));
pDataValue1->iStr = 0;
pDataValue1->iEnd = 10;
AfxBeginThread((AFX_THREADPROC)BoltThread1, pDataValue1, THREAD_PRIORITY_NORMAL, 0, 0, NULL);