12 Aralık 2013 Perşembe

Kod Günlüğü 9 C# da Kodların Çalışma Süresini Hesaplama

Merhaba günlük. Uzun zaman oldu ayrı kaldık. Ama güzel bir konu ile geri geldim. Şimdi sana C# da yazdığın kodların ne kadar sürede işlemini gerçekleştiğini görebileceğin programın kodlarını göstereceğim sana.

Kodların ne kadar zaman işlemini bitirdiği, performansa dayalı bir program yazmışsak çok önemlidir. Aslında yazacağımız her program için performans önemli olduğuna göre bu konuda o zaman çok önemlidir gözüyle bakabiliriz.

O zaman günlük bismillah deyip işe koyulalım çokta uzun bir işimiz yok aslında.

Bu işlemi yaptıracak kodlarımız sınıflarımız ve metodlarımızı kullanabilmek için öncelikle projemize

using System.Diagnostics; 


isim uzayını ekliyoruz.


Şimdi kodlarımızı yazdığımızı varsayalım. İstiyoruz ki bu kodlar ne kadar sürede çalışıp işini bitirecek bunu görelim.


Bu işlem için Diagnostics uzayına ait bir Stopwatch nesnesi oluşturalım. Ama bu nesnemizi global oluşturalım. Ki istediğimiz her yerde kullanabilelim.

Stopwatch sw=new Stopwatch();



Şimdiki yapacağımız işlem ise önemli. 

Hangi kod satırından itiaren sürenin işlemesini istiyorsak sayacımızı o satırın üzerinden itibaren başlatıyoruz.

Ben örnek olarak oluşturduğum projemde 1 milyar kere dönen bir for döngüsünün ne kadar sürede tamamlanacağını bulmaya çalıştım.

O yüzden sayacı bu for döngüsünün üzerinden başlattım günlük. Şöyle ki;

sw.Start();



İşlem bittiğinde label a değeri yazdıracaktım. Bunun içinde kodların bittiği yerden değeri yazdırdık.


Son bir şey daha söyleyip gideyim günlük. Burada sw.Elapsed; zaman türünde değer döndürür. Biz;

TimeSpan x; 

şeklinde bir değişken tanımlasak ve 

x=sw.Elapsed;

desek istediğimiz değeri x değişkeninde tutabilir ve bunu istediğimiz zaman istediğimiz gibi de kullanabiliriz. Buda aklında bulunsun.



İşte bu kadardı günlük. Bilgisayarım 1milyar kere tekrarlanan for döngüsünü ise 02 saniyede işlemeyi başardı.


Amma çok uzattın ha diyorsan sana her zaman ki gibi birde Kodun Özü veriyim günlük.

KODUN ÖZÜ


1. Öncelikle projemize 

using System.Diagnostics; 


isim uzayını ekliyoruz.




2. Bu uzaya ait bir tane Stopwatch nesnesi tanımlıyoruz.

Stopwatch sw=new Stopwatch();



3. Hangi kod satırından itibaren bakmak istiyorsak o kod satırının hemen üstünde sayacı başlatıyoruz.


sw.Start();


4. Nerede bitirmek istiyorsak da orada sayacı sonlandırıyoruz.

sw.Elapsed;


Hadi kolay gelsin. Vesselam.


KONUNUN YAZARI NCFKR
DİĞER YAZILIM GÜNLÜĞÜ KONULARI İÇİN TIKLA VE ÖĞREN

Hiç yorum yok:

Yorum Gönder