Selamlar
Timer'lar da veya diğer işlemlerde bazı komutların belirli bir süre sonra uygulanmasını isteriz.
Microsoft bunun için basic olarak
C#:
System.Threading.Thread.Sleep(10000);
Gibi bir illet koymuş. Bu komutu çalıştırdığınızda 10 saniyeliğine formda hiçbir şeye tıklanmıyor, pencere hareket etmiyor ve bütün elemanlar donuyor.
Bunun yerine kullanacağımız fonksiyon budur:
C#:
public void Bekle(double beklemeSuresi)
{
const double saniye = 1.0# / (1440.0# * 60.0#);
DateTime beklet;
DateTime.Now.AddSeconds(saniye);
beklet = DateTime.Now.AddSeconds(saniye).AddSeconds(beklemeSuresi);
while (!DateTime.Now > beklet)
Application.DoEvents();// Devam et
}
Kullanımı ise aşağıdaki gibidir:
Kod:
Bekle(10);
//yada
//Bekle(4.5);