終止由CWinThread派生出來的執行緒

2021-04-13 05:44:40 字數 912 閱讀 3991

方法一:

首先宣告乙個全域性變數:

extern cwinthread *pthread;//在.h中

然後定義:

cwinthread *pthread=null;//.cpp中

在你的執行緒類的bool cmythread::initinstance()裡加入:

pthread=afxgetthread();

最後,在你要結束的地方加入:

if(pthread) 

這樣就結束了

方法二:

c建立時儲存控制代碼 然後最後用  

bool   terminatethread(  

handle   hthread,         //   handle   to   thread  

dword   dwexitcode       //   exit   code  

);  

關閉之  

方法三:

bool   terminatethread(  

handle   hthread,         //   handle   to   thread  

dword   dwexitcode       //   exit   code  

);  

c***thread   m_thread;  

handle   hthread=m_thread.m_hthread;  

bool   postthreadmessage(  

uint   message   ,  

wparam   wparam,  

lparam   lparam    

);  

用wm_close不知道行不行,如果不行,過載pretranslatemessage  

CWinThread的使用詳解

分類 c c 1.afxbeginthread 與 cwinthread createthread的區別 2.常見的啟動執行緒函式有三個 createthread beginthread 以及 beginthreadex afxbeginthread 1和2是sdk函式,3是mfc函式 至於啟動的是...

MFC架構之CWinThread類

我們知道,windows以事件驅動方式工作,每個win32應用程式都至少包含乙個訊息佇列和乙個訊息幫浦。訊息佇列建立在作業系統提供的記憶體保留區中,訊息幫浦不斷搜尋訊息佇列,將取得的訊息分發給應用程式的各個部分進行處理,這個過程叫做訊息迴圈。基本訊息迴圈如下 cpp view plain copy ...

利用CWinThread實現跨執行緒父子MFC視窗

標籤 mfc物件 mfc視窗跨執行緒 mfc介面執行緒 跨執行緒訪問mfc物件 原始出處 作者資訊和本宣告。否則將追究法律責任。原則上,mfc物件只能由建立該物件的執行緒訪問,而不能由其它執行緒訪問.這是因為mfc視窗中有乙個windows handle maps,這個maps同執行緒相關,也就是說...