ブーストスレッドを作成しました: boost :: thread thrd(& connectionThread);ここで、connectionThreadは単純なvoid関数です。C++ブーストスレッドを1秒間待機させる
boost::xtime xt;
boost::xtime_get(&xt, boost::TIME_UTC);
xt.sec += 1;
boost::thread::sleep(xt); // Sleep for 1 second
プログラムはxtime_getラインでクラッシュ:私はそれを使用して、たとえば、数秒待つ作るしようとすると、これは、しかし、正常に動作します。手動でxt.secを設定しようとしても、動作しません。私はいくつかの方法を試しましたが、動作させることができません。私が間違っていることはありますか?私の目標を達成するためのより簡単な方法はありますか?
詳細informatイオンが必要です - これはxtime_get行でクラッシュしますか?もしそうなら、手動でxtを設定するとクラッシュするのですか? –
手動でxt.secを設定しようとすると、どのように動作しませんか? xt.sec = 1はおそらく非常に短い時間ですが、秒は少なくともミリ秒であると思います。もしそうなら、あなたは1ミリ秒間眠ります。 – Skurmedel
http://www.boost.org/doc/libs/1_38_0/doc/html/thread/time.html#thread.time.system_timeライブラリの最新バージョンがboost ::のコンポーネントを使用しているように見えますdate_time - 期間を指定します。 – Skurmedel