C# 일정시간 대기, 딜레이 시키기

2020. 5. 28. 14:52C#

728x90
반응형

 

Thread.Sleep() 이 있지만, 간단하게 사용할 때는 아래와 같이도 사용할 수 있다.

 

private void test()
{
    // 테스트 
    for (i = 0; i<100;i++)
    {
        Diagnostics.Debug.print(i);
        Delay(500);
    }

}


private static DateTime Delay(int MS)
{
    // Thread 와 Timer보다 효율 적으로 사용할 수 있음.
    DateTime ThisMoment = DateTime.Now;
    TimeSpan duration = new TimeSpan(0, 0, 0, 0, MS);
    DateTime AfterWards = ThisMoment.Add(duration);

    while (AfterWards >= ThisMoment)
    {
        System.Windows.Forms.Application.DoEvents();
        ThisMoment = DateTime.Now;
    }
    return DateTime.Now;
}

 

 

728x90
반응형