メインから作成されているプロデューサーとコンシューマーのスレッドがあります。coutステートメントを除いて、それらは正しく機能します
class myclass{
int x;
// stuff
}
void foo1(myclass* ob){
setX(ob->x);
// stuff
}
void foo2(myclass* ob){
cout << ob->x << endl; // ONLY THIS DOESN'T EXECUTE
ob->getX();
// stuff
}
int main(){
myclass* ob = new myclass();
boost::thread producer_thread(boost::bind(foo1, ob));
boost::thread consumer_thread(boost::bind(foo2, ob));
// stuff
producer_thread.join();
consumer_thread.join();
}
すべて正常に動作します (cout を除いて、x を表示する showX を含みます。何が問題なのですか?