我有一個簡單的叫做內部異步的lambda。但它提供了一個system_error。如何使用不返回任何東西的lambda表達式的異步?
#include<future>
#include<iostream>
int main()
{
auto a = std::async([]()
{
std::cout << 42 << std::endl;
});
a.get();
return 0;
}
編譯器:C++ 0X(GCC-4.5.1)
任何想法?
這看起來像是GCC 4.5中的一個bug。您的代碼是有效的AFAICT並與叮噹(中繼)一起使用。 – bames53 2012-02-11 05:38:09
我也嘗試了GCC 4.6.1。同樣的錯誤。當我用-pthread編譯時,它工作正常。 – balki 2012-02-11 06:40:13
@ bames53鏗鏘樹幹可以codegen lambdas? – 2012-02-11 14:18:38