C++ CreateThread參數(shù)具體應(yīng)用技巧解析
在這篇文章中,我們會為大家詳細(xì)推出C++ CreateThread參數(shù)的具體應(yīng)用方法,以幫助大家能夠從中獲得一些幫助,提高編程效率。那么接下來就讓我們一起來看看C++ CreateThread參數(shù)的正確使用方法吧。
項目是VS2003下的,用到了CreateThread函數(shù),看到網(wǎng)上說不應(yīng)該調(diào)用CreateThread,而應(yīng)該使用_beginthreadex。因為剛好用到了,就還是寫一下CreateThread中參數(shù)的使用方法。
先定義要傳遞的C++ CreateThread參數(shù)結(jié)構(gòu)體:
- typedef struct SParam
- {
- int No;
- unsigned short chnlID;
- unsigned short sessionID;
- }uParam,*sParam;
- DWORD WINAPI AccountManager(PVOID pParam);
- void main()
- {
- DWORD dwThreadId;
- HANDLE hThrd = NULL; // thread handle
- SParam sparam;
- SParam *p;
- sparam.No = 1;
- sparam.chnlID = 1;
- sparam.sessionID = 1;
- p = &sparam;
- hThrd = (HANDLE)CreateThread(NULL,
- 0,
- AccountManager,
- p,
- 0,
- dwThreadId;
- }
- DWORD WINAPI AccountManager(PVOID pParam)
- {
- sParam sparam;
- sparam = (sParam)pParam;
- try
- {
- /*Run為自己寫的一個方法,Run(int i,unsigned short
chnlID,unsigned short sessionID)*/- Run(sparam->No,sparam->chnlID,sparam->sessionID);
- }
- catch (...)
- {
- logger.error("AccountManager(%d): System error.\r\n", threadId);
- }
- }
大體意思是這樣,C++ CreateThread參數(shù)代碼僅供參考。
【編輯推薦】