私はunistd.hでusleep関数を見つけました。すべてのアクションの前にいくつかの時間を待つのが便利だと思っていました。しかし、スレッドがシグナルを受信しないとスリープするだけです例えば、私がボタンを押すと(私はOpenGLを使用していますが、time.hとunistd.hに関するより具体的な質問があります)、スレッドは目を覚まし、私は自分が望むものを得られません。 time.hには整数を受け付けるスリープ関数がありますが、整数が大きすぎます(私は0.3秒待っています)ので、私はusleepを使用します。 ミリ秒単位で時間をとる機能があるかどうか聞いてきます(GNUなどのライブラリから)。 これはtime()のように動作するはずですが、秒の代わりにミリ秒を返します。可能でしょうか?時間をミリ秒単位で表示する
4
A
答えて
4
これは私が使用してクロスプラットフォームの機能である:あなたはこのようにそれを行うことができ後押ししている場合は
unsigned Util::getTickCount()
{
#ifdef WINDOWS
return GetTickCount();
#else
struct timeval tv;
gettimeofday(&tv, 0);
return unsigned((tv.tv_sec * 1000) + (tv.tv_usec/1000));
#endif
}
+0
私はtime()のような関数が必要ですが、それはmsを取得します。 –
+0
@RamyAlZuhouri:OK、私は自分の答えを編集しました。 – trojanfoe
7
:
#include <boost/thread.hpp>
int main()
{
boost::this_thread::sleep(boost::posix_time::millisec(2000));
return 0;
}
この簡単な例を、あなたはコード内で見ることができるように2000msの間スリープします。
編集:
[OK]を、私は質問を理解と思ったが、その後、私はコメントを読んで、今私はもうそれほどよく分かりません。
おそらく、いくつかのポイント/イベントから何ミリ秒経過したとしますか?その場合は、あなたのような何かを行うことができます:(長い行を許しなさい)
#include <boost/chrono.hpp>
#include <boost/thread.hpp>
#include <iostream>
int main()
{
boost::chrono::high_resolution_clock::time_point start = boost::chrono::high_resolution_clock::now();
boost::this_thread::sleep(boost::posix_time::millisec(2000));
boost::chrono::milliseconds ms = boost::chrono::duration_cast<boost::chrono::milliseconds> (boost::chrono::high_resolution_clock::now() - start);
std::cout << "2000ms sleep took " << ms.count() << "ms " << "\n";
return 0;
}
を
関連する問題
- 1. Wakanda表示時間にミリ秒単位:分:分:秒
- 2. Wireshark:時間をミリ秒単位で表示しますか?
- 3. NSTimer秒/ミリ秒単位で時間を短縮します。
- 4. 時間差をミリ秒単位で取得する方法
- 5. ハードウェアの時間をミリ秒単位で取得する方法
- 6. 時間をミリ秒単位で解析する方法は?
- 7. 現地時間をミリ秒単位で取得する
- 8. 時間を秒単位+ミリ秒に換算
- 9. C++クロノシステムの時間(単位:ミリ秒、時間)
- 10. NetStream.seek(ミリ秒単位)
- 11. vb.netでcurrnt時間を秒単位で表示する方法
- 12. ミリ秒単位での表現
- 13. R 2カラム間の時間差(ミリ秒単位)
- 14. 変換時間(ミリ秒)の持続時間(BigDecimal値+時間単位)長い
- 15. パワーアプリ時間を1時間単位で表示する方法:分:秒フォーマット
- 16. RavenDB Query統計サーバの実行時間(ミリ秒単位)
- 17. ミリ秒単位の基本時間への変換
- 18. C - プログラムの実行時間(ミリ秒単位)<time.h>
- 19. bcなしのミリ秒単位の時間
- 20. iphoneテーブルビューの時間は秒単位で表示されます
- 21. vxworksのc/C++でシステム時間をミリ秒単位で取得する方法
- 22. SQL Developerで合計時間をミリ秒単位で生成する
- 23. .Net String Formatミリ秒単位の通貨値を表示
- 24. MySQLテーブルの時間と分をミリ秒単位で計算する
- 25. Cプログラムの経過時間をミリ秒単位で計算する
- 26. Powershellを使用してミリ秒単位で時間を検索しますか?
- 27. unix_timestamp()はApache Sparkのunix時間をミリ秒単位で返しますか?
- 28. Android(時間は0:00:000)はミリ秒単位で取得しますか?
- 29. ミリ秒を含む表示日時
- 30. getTime()でのミリ秒単位の日付
あなたがusleep' 'については好きではないかについて、より明確にすることはできますか?私はそれがあなたが欲しいものをまさにしていると言うことができるように近いです(よく、msの代わりにμsを除いて)。 –
私は質問をしません。あなたは「ミクロタイム」ではないのですか? – nothrow
問題はスリープ機能を必要としないが、「getTime in ms」関数です。スレッドがスリープ状態になると、何らかの信号で覚醒する可能性があります(キーを押すなど)。 –