C++ では、次のメソッドを使用して、プログラムを指定した時間スリープさせることができます。
1 Windows のスリープ機能など、オペレーティング システム関連のメソッドを使用するには、<windows.h> ヘッダー ファイルをインクルードする必要があります。
#include <windows.h>
// 1000 ミリ秒 (1 秒) スリープします
Sleep(1000)
。
2 ヘッダー ファイルで sleep_for 関数を使用し、
#include<chrono>
#include<thread>
// 1 秒スリープ
std::this_thread::sleep_for(std::chrono::seconds(1))
;
// 500 ミリ秒スリープ
std::this_thread::sleep_for(std::chrono::milliseconds(500))
;
要約:上記のメソッドはすべてブロックされていることに注意してください。つまり、プログラムはスリープ中に他の操作を実行できません。<chrono>
また、と を使用した方法は<thread>
クロスプラットフォームであるため推奨されます。たとえば、Cyclonedds などのオープンソースのクロスプラットフォーム ソース コードにプログラムを一定期間スリープさせるコードを追加する場合、2 番目の方法のみを使用できます。2 番目の方法はクロスプラットフォームであるためです。最初の方法は、Windows プラットフォームにのみ制限できます。