• Üyelik paylaşımı yasaktır! Hesabınızı başkalarına vermeyin! Hesap paylaşımları yasaklama ile sonuçlanacaktır.

C# Backgroundworker Kontrolü

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

ByClxon

Süper Üye
Katılım
7 Ocak 2016
Mesajlar
955
Beğeni Puanı
4
Yaş
22
[font='Titillium Web', sans-serif]C#'da pek bilinmeyen ve kullanılmayan bir yapıyı göreceğiz bu derste.Öncelikle BackgroundWorker'ın ne işe yaradığını kısaca anlatayım.[/FONT]







[font='Titillium Web', sans-serif]Aslında çalışma mantığı thread gibi.Siz formunuzda başka bir işle uğraşırken, aynı anda arka planda başka bir işin yürütülmesini bu yapı ile sağlayabilirsiniz.[/FONT]







[font='Titillium Web', sans-serif]Ben bu örnekte bir for döngüsü döndüreceğim ve bittiğinde bir uyarı mesajı vereceğim.Bu sizin projenizin büyüklüğüne ve amacına göre değişen bir durum tabi.Mesela benim aklıma kullanım alanı olarak ilk gelen.Veritabanından çok büyük data çektiğiniz zamanlarda,kullanıcı formda başka işlerle uğraşırken bir yandan veriler çekilebilir.Ne zaman veriler çekildi,kullanıcıya uyarı verilerek artık verileri kullanabileceği söylenebilir.Bunu geliştirmek size kalmış tabiki.Neyse ben örneğime geçeyim hemen...[/FONT]





[font='Titillium Web', sans-serif]
Lütfen, Giriş yap veya Kayıt ol içerikteki bağlantıyı görüntülemek için!
[/FONT]





[font='Titillium Web', sans-serif]Öncelikle sayfaya bir backgroundworker nesnesi atalım.(Not : Bu nesneyi Runtime'da da yapabiliriz.)[/FONT]





[font='Titillium Web', sans-serif]Kod:[/FONT]



[font='Titillium Web', sans-serif]backgroundWorker1.RunWorkerAsync()[/FONT]







[font='Titillium Web', sans-serif]Yukardaki kodumuzla BW'ın çalışmasını başlatmış olduk.Bunu Page_Load'a yazabileceğimiz gibi herhangi bir butonun click'inde ve ya istediğimiz bir yerde kullanabiliriz.[/FONT]



[font='Titillium Web', sans-serif]Şimdi gelelim esas Olaya ki BW çalışmaya başladığında yapılacak iş/işlemleri belirtmek bu.[/FONT]







[font='Titillium Web', sans-serif]Kod:[/FONT]



[font='Titillium Web', sans-serif]private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)[/FONT]

[font='Titillium Web', sans-serif]{[/FONT]

[font='Titillium Web', sans-serif]int i = 0;[/FONT]

[font='Titillium Web', sans-serif]while (i<100000000)[/FONT]

[font='Titillium Web', sans-serif]{[/FONT]

[font='Titillium Web', sans-serif]i++;[/FONT]

[font='Titillium Web', sans-serif]}[/FONT]

[font='Titillium Web', sans-serif]}[/FONT]
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...


Üst Alt