C++において、処理を一定時間停止する方法としてsleep関数を使用することができます。この関数は、指定された秒数だけ処理を停止し、その後に処理を再開します。
sleep関数は<unistd.h>
ライブラリで定義されており、以下のように使用します。
#include <unistd.h> unsigned int sleep(unsigned int seconds);
引数には停止する秒数を指定します。返り値は停止中に残りの秒数を返すことがありますが、システムによっては常に0を返す場合もあります。
以下に、sleep関数を使用したプログラムの例を示します。
タイトル:sample.cpp
#include <iostream> #include <unistd.h> int main() { std::cout << "Start" << std::endl; sleep(3); // 3秒間停止 std::cout << "End" << std::endl; return 0; }
このプログラムを実行すると、Startと表示された後、3秒間処理が停止されます。その後にEndと表示されます。
なお、sleep関数はプロセス全体を停止させるため、マルチスレッドプログラムにおいては注意が必要です。また、1秒未満の時間を指定することもできますが、精度は保証されません。