在静态初始化期间启动新线程

时间:2015-02-02 10:24:10

标签: c++ multithreading c++11 mingw

我有一个DLL,在加载时需要生成一个新线程。我目前的做法是这样的:

struct Dummy {Dummy() {} };
Dummy obj;

Dummy::Dummy()
{
     std::thread t([]() {std::cout<<"Helloworld\n"; });
     assert( t.joinable() );
     t.join();
}

不幸的是,此代码永远挂在t.join()行,并且它不会打印任何内容。主应用程序使用LoadLibrary加载dll。

我正在使用Mingw的gcc 4.8。

0 个答案:

没有答案