C# Thread Sleep ile İşlem Süresini Uzatmak

C# Thread Sleep ile İşlem Süresini Uzatmak

27 Kasım 2018 0 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 84
Yaklaşık okuma süresi : 3 DK
C# Textbox Sadece Sayı Harf Girişi Yaptırmak
C# DataTable "Bu satır başka bir tabloya ait" Hatası Çözümü
C# Thread Sleep ile İşlem Süresini Uzatmak
5 (100%) 1 Oy

C# Thread Sleep ile İşlem Süresini Uzatmak, dersim ile c sharp eğitim setime devam ediyorum. Bu dersimizde, kodlarımızın hemen değil de bekleyerek işlem yapmasını sağlayacağız. Bu işlem için System.Thread sınıfını kullanacağız.

C# Thread Sleep ile İşlem Süresini Uzatmak

Thread Nedir?

Thread, C#’ta aynı anda birden fazla işlem yapabilmemizi sağlayan bir sınıftır. Birden fazla başlatılan işleri bekletmek ya da tamamen sonlandırma gibi işlemleri de yapabiliriz.

Bu dersimizde Thread işlemlerinden bahsetmeyeceğim. Çünkü yazılarımı takip edenler bilirler ki ben sadece kullandığım ve denediğim şeyleri yazıyorum ve paylaşıyorum. Thread ile çoklu işlem hiç kullanmadığım için o dersi yazmadım. Kullandığımda o dersi de yazacağım.

Öncelikle projemize

using System.Threading;

Namespace ‘ini ekliyoruz.

 

İşlem Süresini Uzatmak

İşlem sürelesini uzatmak yani kodları bekletmek için Sleep metodunu kullanacağız. Önce örnek kodumuzu verelim sonra da kodlarımızı açıklayalım.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using System.Threading;

namespace mustafabukulmez_com_dersler._4_Thread_Sleep_ile_Islem_Suresini_Uzatmak
{
    public partial class thread_sleep : DevExpress.XtraEditors.XtraForm
    {
        public thread_sleep()
        {
            InitializeComponent();
        }

        private void thread_sleep_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 500; i++)
            {
                listBox1.Items.Add(i);
                Thread.Sleep(1000); // milisaniye cinsinden
            }
        }
    }
}

Bir form açtım ve forma da bir listbox ekledim. Bu listbox’a da 1 ‘den 500 ‘e kadar olan sayıları yazdırdım. Normal şartlarda bu sayıları yazması bir kaç saniye sürer değil mi? 1 saniye bile sürmüyor.

Burada 500 saniye kadar sürecektir. Çünkü for döngüsü içerisinde

 Thread.Sleep(1000);

komutu var. Bu Sleep metodu milisaniye cinsinden değer almaktadır. 1000 Milisaniye 1 saniye yapar. O yüzden 1000 yazdık.

İlgili İçerik  C# Program Üzerinden PDF, Excel vs. Açmak

Şimdi işlem nasıl ilerleyecek ona bir bakalım.

Öncelikle 0 yazılacak. Sonra bir saniye bekleyecek ve 1 sayısını yazacak ve öyle devam edecek. Bu sayede bir kaç saniye de bitecek bir işlemi 500 saniyeye çıkarmış oluyoruz. Bu işlem bana nerede lazım olur derseniz de şuanda aklıma bir şey gelmedi. 😀

Sen nerede kullandın derseniz de, forma eklediğim bir web browser nesnesinde bir site açtırıyordum. Sitenin açıldıktan sonra işlemler devam etsin diye kodları bekletmek için kullanmıştım ama işime yaramadığından geri silmiştim. Ama başkalarına lazım olabilir diye ders olarak eklemeyi istedim.

Sizler için github’a yüklediğim projede bir karşılaştırma da yaptım. Normal ve Thread ile kaçar saniye sürdüklerini vs. gösterdim.


C# Thread Sleep ile İşlem Süresini Uzatmak, dersimizde bu kadardı dostlar. Umarım faydalı bir yazı olmuştur.

C# eğitim seti sayfasına gitmek için tıklayabilirsiniz.

Ayrıca kısa süre önce tüm YENİ derslerimi tek bir proje içinde yapıp github’a yükleyeceğim demiştim. Bu dersimde o projenin içerisinde bir klasör olarak yerini almıştır. Buraya tıklayarak projeye ulaşabilirsiniz.

Sağlıcakla ve takipte kalın 😉

Bol kodlu günler…

C# Textbox Sadece Sayı Harf Girişi Yaptırmak
C# DataTable "Bu satır başka bir tabloya ait" Hatası Çözümü
Mustafa Bükülmez

Liseden, Ağ Sistemleri ve Yönetimi bölümünden mezun oldum. Üniversiteden (2 yıllık), Bilgisayar Programcılığı bölümünden mezun oldum. Şuanda da AÖF, Yönetim Bilişim Sistemleri bölümünde okumaktayım.

Uzmanlık alanlarım; Windows Sistemleri, HTML, CSS, C# ve SQL’dir.

Hobi olarak uğraştığım genel konular, Photoshop, After Affects, Corel Draw’dır.Film, YABANCI dizi, Anime izlemeyi ve Manga okumayı severim. Arkadaşlarımla yürüyüş yapmayı ve grup olarak aktivitelere gitmeyi severim. Geri kalan zamanlarımın tümü bilgisayar karşısında geçer.