std::this_thread::sleep_for
提供: cppreference.com
ヘッダ <thread> で定義 | ||
template<class Rep, class Period > void sleep_for(conststd::chrono::duration<Rep, Period>& sleep_duration ); | (C++11以上) | |
少なくとも指定された sleep_duration
の間、現在のスレッドの実行をブロックします。
スケジューリングやリソースの奪い合いによる遅延のため、この関数は sleep_duration
より長くブロックする可能性があります。
標準は時間計測に steady clock を使用することを推奨しています。 処理系が代わりに system clock を使用する場合、待機時間は時計調整の影響も受けるかもしれません。
目次 |
[編集]引数
sleep_duration | - | 寝る時間 |
[編集]戻り値
(なし)
[編集]例外
実行中に clock、time_point、または duration によって投げられるあらゆる例外 (標準ライブラリによって提供される clock、time_point、および duration は、例外を投げることはありません)。
[編集]例
Run this code
#include <iostream>#include <chrono>#include <thread> int main(){usingnamespace std::chrono_literals;std::cout<<"Hello waiter\n"<<std::flush;auto start = std::chrono::high_resolution_clock::now(); std::this_thread::sleep_for(2s);auto end = std::chrono::high_resolution_clock::now();std::chrono::duration<double, std::milli> elapsed = end-start;std::cout<<"Waited "<< elapsed.count()<<" ms\n";}
出力例:
Hello waiter Waited 2000.12 ms
[編集]関連項目
(C++11) | 指定された時刻まで現在のスレッドの実行を停止します (関数) |