WindowsのSleep(ms)コマンドにより、スレッドはタイムスライスを解放しています。スレッドを停止するがタイムスライスを解放しない同等のSleep(ms)コマンドはありますか?
質問する
259 次
2 に答える
4
スレッドをスリープ状態 (サスペンド) にしたくない場合は、スレッドを停止させたいと考えています。単純なループでそれを行います:
#include <time.h>
void stall(unsigned ms){
clock_t goal = clock()+ms;
while(goal>clock());
}
// or maybe higher resolution with some performance profiling functions...
于 2011-04-16T14:10:46.087 に答える
1
変。
これを行う方法は、必要な期間が終了するまでスレッドにループを実行させることです。
より良い解決策は、デバイスを処理するスレッドに高い優先度を与えることです。とにかく、Windows はリアルタイム システムにはあまり適していません...
于 2011-04-16T14:12:39.283 に答える