class Class {
public:
Class ();
private:
std::thread* updationThread;
};
コンストラクタ:
Class::Class() {
updationThread = new std::thread(&someFunc);
}
アプリケーションのある時点で、そのスレッドを一時停止して関数を呼び出す必要があり、その関数の実行後にスレッドを再開する必要があります。ここで起こるとしましょう:
void Class::aFunction() {
functionToBeCalled(); //Before this, the thread should be paused
//Now, the thread should be resumed.
}
functionToBeCalled()
functionと useで別のスレッドを使用しようとしましthread::join
たが、何らかの理由でそれを行うことができませんでした。
スレッドを一時停止するにはどうすればよいですか? またはthread::join
、他のスレッドが終了するまでスレッドを一時停止するにはどうすればよいですか?