[問題] MFC 執行緒 獲得回傳值方式
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VS2010
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
MFC
問題(Question):
想請問如何獲得AfxBeginThread後產生子執行緒的運算結果
如下面所貼的單純程式碼
要如何回傳子執行緒內所得到iThread值呢?
希望大家能提供一點意見 感激不盡!!
謝謝!!
程式碼(Code):(請善用置底文網頁, 記得排版)
struct THREAD_INFO //用於傳遞執行參數子執行緒的資料型態
{
HWND hWnd; //產生執行緒的視窗物件
int iValue;
}Thread_Info; //建立執行緒參數為全域變數
void CMultiTestDlg::OnBnClickedButton1()
{
Thread_Info.iValue = 1; //要輸入的參數
AfxBeginThread(Thread, (LPVOID)&Thread_Info); //產生一個子thread
}
UINT CMultiTestDlg::Thread(LPVOID pParam) //執行緒函數
{
THREAD_INFO *Thread_Info = (THREAD_INFO*)pParam;
//建立一個THREAD_INFO的結構指標 傳入Thread的參數
int iThread = Thread_Info->iValue + 1; //不知該如何將此值回傳...
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.72.212.97
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1429257154.A.7F3.html
→
04/17 17:00, , 1F
04/17 17:00, 1F
推 Ting1024: 全域變數即可。
04/17 17:14
謝謝樓上二位的熱心解惑!! 等等就來試看看!!
※ 編輯: srxrrr (123.193.58.198), 04/18/2015 01:00:06
推
04/18 21:46, , 2F
04/18 21:46, 2F
→
04/18 21:47, , 3F
04/18 21:47, 3F
→
04/18 21:47, , 4F
04/18 21:47, 4F