Sleep()以外の、cでウインドウで使用できるより良いスリープ関数を知っている人がいるのだろうかと疑問に思っていました。これは、ミリ秒の入力を受け取り、入力が最小時間経過したことを保証します。私は1ミリ秒で渡していますが、実際には15-16ミリ秒の遅延があります。特定のスリープ時間を正確に設定する方法はありますか?Windowsのcでスリープ機能。より精度の高い関数が存在するか?
3
A
答えて
2
いいえ、実際はありません。プログラムをスリープ状態にすると、プロセッサを放棄し、オペレーティングシステムが次に何をするかを決定させます。オペレーティングシステムが制御されると、プログラムに別の処理時間を与えるタイミングを決定します。このため、最低限を指定することができますが、特定の時点でOSがプロセスに戻るという保証はありません。
1
0
いいえ、ミリ秒は利用可能な粒度であるため、Windowsではより良いスリープ機能はありません。より少ない時間スリープ状態にしたい場合は、種類のスピンロックを実装する必要があります。
1
睡眠は、あなたのプロセスが正確Nミリ秒スリープすること、少なくとものnミリ秒のためではありません実行されないことが保証されます。タイマーを設定したいのですか?またはビジーウェイト(ループ内のQueryPerformanceCounterをポーリング)
私はこのアプローチ(ビジーウェイト)を回避しようと思いますが、しかし、あなたはサイクルを燃やしているために、あなたは低いクロック速度に置かれてから、CPUを停止している(つまり、燃焼電池寿命)
関連する問題
- 1. 機能CORR(倍精度、倍精度)が存在しない - のPostgresSQL
- 2. より精度の高いファイルに数値を書く - C++
- 3. GGMAPより高い精度を得る
- 4. C#高精度タイミング
- 5. CPP WINDOWS:マイクロ秒単位でスリープ機能がありますか?
- 6. C++プロファイリング/最適化:最適化された関数で精度の高いプロファイリング精度を得る方法
- 7. 精度機能
- 8. elispには高精度の対数計算機がありますか?
- 9. LDA精度は元のデータセットよりもデータセットの方が高い
- 10. C++のsinlとcosl関数の精度
- 11. C++のスリープ関数
- 12. 検証精度は常にKerasのトレーニング精度よりも高い
- 13. より高い精度のタイプを選択する
- 14. Rubyの平方根はBigDecimal.sqrtより精度が高いですか?
- 15. windows C++とマイクロ秒スリープの可能性
- 16. Kerasバイナリ精度メトリックの精度が高すぎます
- 17. クロスプラットフォームC++のスリープ関数
- 18. C++:デフォルトよりも精度の高いファイルにダブルスを書き込む
- 19. Pythonでの対数関数の精度
- 20. 最高精度
- 21. C#Graphics.Drawline関数が機能していません、 "名前 'graphics'が現在のコンテキストに存在しません"
- 22. 統計モデルのR2が低く、シークレットの精度/精度が高い
- 23. iOS上の高精度乱数
- 24. MySQLの緯度と経度が高精度である
- 25. より精度
- 26. より速い数学アルゴリズムが精度を犠牲にする
- 27. javaのスリープが機能しない
- 28. アンドロイドプログラムのスリープ機能
- 29. C言語でのclock()関数の精度
- 30. C++倍精度/精度
を持っていない限り、あなたは最低限の保証を望んでいると言いますが、あなたの例では実際に保証された正確な時間(または保証された最大値)がほしいと思うように聞こえます。 –
sleep()関数は18msごとにのみ起動します –
関連するhttp://stackoverflow.com/questions/85122/sleep-less-than-one-millisecondを参照してください – harpo