,

C# Timer Kullanımı: Tekrarlayan İşlemler İçin Zamanlayıcı

Posted by

C# programlama dilinde Timer sınıfı, belirli bir süre aralığında tekrarlanan işlemleri gerçekleştirmek için kullanılmaktadır. Ayrıca Timer, belirli bir zaman dilimi içinde belirli bir görevi sürekli olarak yürütmek için kullanılabilmektedir. Bu sayede zamanlı işlemler, periyodik güncellemeler veya arka planda çalışması gereken işlemler kolayca gerçekleştirilebilmektedir. Şimdi Bu yazıda, C# programında Timer kullanımı adım adım açıklayacak ve örneklerle konuyu pekiştireceğiz.

c# timer kullanımı

Adım 1: Timer Sınıfını Ekleyin
Timer sınıfını kullanmak için C# programında using System.Timers; ifadesini eklememiz gerekmektedir.

using System;
using System.Timers;

namespace TimerExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // Timer kullanımı burada gerçekleştirilecek
        }
    }
}

Adım 2: Timer Nesnesini Oluşturun
Timer kullanmak için Timer sınıfının bir nesnesini oluşturmalıyız.

Timer timer = new Timer();

Adım 3: Timer Ayarlarını Yapın
Timer nesnesinin süresini ve tekrarlanma durumunu ayarlamalıyız.

timer.Interval = 1000; // 1000 milisaniye (1 saniye) aralıklarla tekrar edecek
timer.AutoReset = true; // True ise tekrar etmeye devam eder, false ise sadece bir kez çalışır

Adım 4: Timer İşlemini Tanımlayın
Timer nesnesi, belirtilen aralıklarla tekrarlanacak işlemleri içeren bir olayı dinleyebilir.

timer.Elapsed += OnTimerElapsed;

Adım 5: Timer İşlevini Belirleyin
Timer nesnesi, süresi dolan her olayda tetiklenecek olan bir işlev belirtmek için kullanılabilir.

static void OnTimerElapsed(object sender, ElapsedEventArgs e)
{
    // Bu kısımda tekrarlanacak işlemleri tanımlayın
}

Adım 6: Timer’ı Başlatın ve Durdurun
Timer’ı başlatmak ve durdurmak için Start() ve Stop() yöntemlerini kullanabiliriz.

timer.Start(); // Timer'ı başlatır
timer.Stop(); // Timer'ı durdurur

C# Timer Kullanımı – Örnek Uygulama 1

Örnek Uygulama: Tekrarlayan Zamanlı Mesaj Şimdi yukarıdaki adımları kullanarak basit bir tekrarlayan zamanlı mesaj uygulaması yapalım.

using System;
using System.Timers;

namespace TimerExample
{
    class Program
    {
        static Timer timer;

        static void Main(string[] args)
        {
            timer = new Timer();
            timer.Interval = 2000; // 2000 milisaniye (2 saniye) aralıklarla tekrar edecek
            timer.AutoReset = true; // True ise tekrar etmeye devam eder, false ise sadece bir kez çalışır

            timer.Elapsed += OnTimerElapsed;

            timer.Start();

            Console.WriteLine("Çıkış yapmak için bir tuşa basın...");
            Console.ReadKey();
        }

        static void OnTimerElapsed(object sender, ElapsedEventArgs e)
        {
            Console.WriteLine("Merhaba! Bu bir zamanlı mesajdır.");
        }
    }
}

Bu örnekte, Timer sınıfını kullanarak her 2 saniyede bir “Merhaba! Bu bir zamanlı mesajdır.” mesajını ekrana basan basit bir uygulama yaptık. Timer kullanarak, periyodik işlemleri gerçekleştirmek için uygun bir zamanlayıcı oluşturabilirsiniz.

Timer Örnek Uygulama 2

Şimdi başka bir uygulama yapalım. Timer sınıfını kullanarak bir süre sayacı uygulaması yapalım. Ayrıca Kullanıcı, bir süre belirleyecek ve bu süre boyunca her saniyede bir geri sayım yapacak bir uygulama yapacağız.

using System;
using System.Timers;

namespace TimerExample
{
    class Program
    {
        static Timer timer;
        static int remainingTime;

        static void Main(string[] args)
        {
            Console.Write("Geri sayım için süreyi saniye cinsinden girin: ");
            int seconds = int.Parse(Console.ReadLine());

            remainingTime = seconds;
            timer = new Timer();
            timer.Interval = 1000; // 1000 milisaniye (1 saniye) aralıklarla tekrar edecek
            timer.AutoReset = true; // True ise tekrar etmeye devam eder, false ise sadece bir kez çalışır

            timer.Elapsed += OnTimerElapsed;

            timer.Start();

            Console.WriteLine("Geri sayım başladı. Çıkış yapmak için bir tuşa basın...");
            Console.ReadKey();
        }

        static void OnTimerElapsed(object sender, ElapsedEventArgs e)
        {
            remainingTime--;

            if (remainingTime >= 0)
            {
                Console.WriteLine($"Kalan süre: {remainingTime} saniye.");
            }
            else
            {
                timer.Stop();
                Console.WriteLine("Geri sayım tamamlandı.");
            }
        }
    }
}

Bu örnekte, kullanıcıdan geri sayım için süre bilgisini alıyoruz. Daha sonra, Timer nesnesini kullanarak her saniye geçtikçe süreyi bir azaltıyoruz. Süre dolunca geri sayımı durduruyoruz ve “Geri sayım tamamlandı.” mesajını ekrana basıyoruz.

Bu örnek, Timer sınıfını kullanarak belirli bir süreye bağlı olarak tekrarlayan işlemler gerçekleştirmek için nasıl kullanılacağını gösteriyor. Bu sayede Geri sayım uygulaması gibi zamanla ilgili işlemler için Timer, oldukça kullanışlı bir araçtır.

c# timer kullanımı adım adım ele aldık. Ayrıca örneklerle de pekiştirmeye çalıştık. Umarım C# serüveninizde sizlere faydalı bir yazı olmuştur.

Daha fazla C# ile ilgili blog yazılarımıza buradan ulaşabilirsiniz.

İlginizi Çekebilir

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir