【C++メモ】WindowsAPI:Sleep関数

このAPIは指定時間だけ処理を停止させたい場合に使用します。

恐らくVB6・VBAでは一番使われる部類のWindows APIではないでしょうか?
.NET Frameworkを使う場合はThread.Sleepを使えば事足りますが、一応C#でのサンプルも書いておきます。

概要
void Sleep(DWORD dwMilliseconds)
機能 指定した時間だけ現在のスレッドの処理を中断
引数 dwMilliseconds 実行を中断する時間(ミリ秒単位)
※「0」を指定した場合、現在のスレッドの残りのタイムスライスを
 他のスレッドに譲る
※「INFINITE」を指定した場合、無制限に実行を中断
DWORD
(unsigned long)
戻り値 なし
関連定数
定数名 説明
INFINITE -1 無制限に実行を中断
使用例:10秒間待機させる
#include <Windows.h>

void Sumple() {
    //現在時刻を出力
    SYSTEMTIME time1;
    GetLocalTime(&time1);
    printf("%02d時%02d分%02d秒¥n", time1.wHour, time1.wMinute, time1.wSecond);

    //10秒(10000ミリ秒)待機
    printf("%d秒 待機¥n", 10);
    Sleep(10000);

    //現在時刻を出力
    SYSTEMTIME time2;
    GetLocalTime(&time2);
    printf("%02d時%02d分%02d秒¥n", time2.wHour, time2.wMinute, time2.wSecond);
}
16時28分50秒
10秒 待機
16時29分00秒


コメント
コメントする








    
この記事のトラックバックURL
トラックバック