この std::thread 関連のコードがLiveWorkSpace.orgで gcc 4.7.2 でコンパイルされて実行されるのに、 Ideone.comと私の Ubuntu 12.04 マシンでは失敗する理由
terminate called after throwing an instance of 'std::system_error'
what(): Operation not permitted
テストされたコード (すべてのケースで gcc 4.7.2) -
#include <string>
#include <iostream>
#include <thread>
void task1(std::string msg)
{
std::cout << "task1 says: " << msg<<std::endl;
}
int main()
{
std::thread t1(task1, "Hello");
t1.join();
return 0;
}