2015-07-02 79 views
1

所以我必须创建具有HWND window=CreateWindowEx(WS_EX_CLIENTEDGE, L"STATIC", L"Hi", WS_CHILD|WS_VISIBLE,0,0,120,20, hWnd, (HMENU)HI, GetModuleHandle(NULL), NULL);线程阻止窗口正在创建

然后在此之后,我创建一个线程与std::thread th=std::thread(print, hWnd); 并与th.join(); 但是启动它的窗口Win32程序,窗口没有得到直到线程完成执行后才创建,即使线程是在窗口之后创建的。

回答

3

调用th.join()使得父线程在继续之前等待子线程完成执行。您不用联接方法启动线程,线程在创建时启动。 Take a look在std :: thread的文档中

+1

好的。谢谢!我认为它有诀窍。 – kasandell