【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秒間待機させる
[System.Runtime.InteropServices.DllImport("kernel32.dll")]
static extern void Sleep(int dwMilliseconds);

void Sumple()
{
    //現在時刻を出力
    Console.WriteLine(DateTime.Now.ToString("hh時mm分ss秒"));

    //10秒(10000ミリ秒)待機
    Console.WriteLine("10秒 待機");
    Sleep(10000);

    //現在時刻を出力
    Console.WriteLine(DateTime.Now.ToString("hh時mm分ss秒"));
}
16時28分50秒
10秒 待機
16時29分00秒


コメント
コメントする








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