開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC2008
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
MFC
問題(Question):
在multithread下,使用delegate的方法讓thread之間溝通
程式碼(Code):(請善用置底文網頁, 記得排版)
請看底下推文的連結
補充說明(Supplement):
各位好,不好意思小弟我又上來請教各位先進了。
自從換工作學著寫MFC後,最近開始學著寫multithread。
一開始寫的時候不知道危險,在MainThread建立新的CWinThread時,
直接把MainThread的物件位址丟給CWinThread物件接,
雖然要存取MainThread物件時都有先做Lock/Unlock,
但找了相關資料覺得這寫法太危險了,
學習採用Delegate的寫法。
搜尋版上的文章後,看到cjcat2266版友分享的文章
http://allenchou.net/2012/04/easy-c-delegates/
我將cjcat2266版友這網址的程式碼,除了demo sample code以外,
copy到一個Delegate.h的檔案。
程式碼大綱如上面的網址所示。
結果Complier跟我說,建立struct時,沒有對應的建構式。
struct ThreadParaStruct在還沒有加入Delegate物件這一行
Delegate<void, int> fp_fun_in_struct;
之前,compiler是過的了的。
請問這邊該怎麼改呢?謝謝。