C++ 11 std::this_thread::yield()
とstd::this_thread::sleep_for()
の違いは何ですか?そして何を使うべきかを決めるには?ありがとう。もしあればstd :: this_thread :: yield()vs std :: this_thread :: sleep_for()?
...
while(true) {
if(pool.try_get_work()) {
// do work
}
else {
std::this_thread::yield(); // other threads can push work to the queue now
}
}
std::this_thread::sleep_for
を使用することができます。
[C++の現在のスレッドのタイムスライスを与える](http://stackoverflow.com/questions/11048657/giving-up-the-time-slice-for-current-thread) -in-c) – ypnos
そこには答えられないようです。 – polapts
'yield'はスローしません。 'sleep_for'が投げるかもしれません。 – dirkgently