Derinlemesine yazılım eğitimleri için kanalımı takip edebilirsiniz...

Multi Thread Çalışmanın Avantaj ve Dezavantajları

Merhaba,

Önceki C# İle Multi Thread Programlamada “Thread” Kavramı başlıklı yazımızda detaylı Thread kavramını ele almıştık. Bu yazımızda ise Multi Thread çalışmanın avantaj ve dezavantajlarına değineceğiz.

Şuana kadar Multi Thread hakkında bildiklerimizi toparlarsak; Multi Thread çalışmanın manası, programda yapılacak işlemleri farklı thread’larda tasarlamak ve bu threadları paralel bir biçimde çalıştırmaktır. Haliyle program açısından çalışma zamanı kısalmış, kullanıcı açısından da programın kullanım ve işlevsellik performansı artmış ve maliyeti azalmış olacaktır.

Yukarıda adresini verdiğim önceki yazımdan hatırlarsanız eğer process içerisindeki varsayılan thread Primary Thread olarak nitelendirilmekteydi. Bunun dışında yaratılarak oluşturulan threadlara ise Worker Thread denmektedir.

Single Thread Çalışmada bir işlem bitmeden diğer işlem başlayamamakta, bundan yola çıkılarak uygulama farklı threadlara bölünerek Multi Thread Çalışma sayesinde önceki işlemlerin bitmesi beklenmeden diğer işlemlerde çalışabilmektedir.

Eğer tek mikro işlemcili bir sistemde çalışıyorsanız Thread’lar aynı anda çalışmazlar. Zaman paylaşımlı olarak çalıştırılırlar. Buda farazi aynı anda çalışıyormuş görünümü verir.

Multi Thread Çalışmanın Avantaj & Dezavantajları

Öncelikle Multi Thread çalışmanın avantajlarını ele almak gerekirse bunlar arasından en gözde olanı asenkron yaklaşım diye nitelendirdiğimiz uygulama içerisinde görevlerin paralel bir şekilde, beklemeksizin gerçekleştirilebiliyor olmasıdır. Bunun yanında, Multi Thread bir uygulamada threadlardan birinin harap olması diğerlerini etkilemez ve uygulama diğer kanallardan normal çalışmaya devam eder.

Elle tutulur tek olumsuz yanı tek mikro işlemciye sahip sistemlerde performans kaybıdır. Nihayetinde aynı anda çalışan thread sayısı ile her bir threadın çalıştırılma miktarı arasında ters bir ortantı söz konusudur.

Evet, bu içeriğimizden sonra artık Multi Thread işlemler gerçekleştirmemizi sağlayacak olan System.Threading.Thread sınıfına değineceğiz. Tabi bunu bir sonraki içeriğimizde gerçekleştireceğiz.

Şimdilik görüşmek üzere diyorum…

İyi çalışmalar…

Bunlar da hoşunuza gidebilir...

1 Cevap

  1. 13 Temmuz 2016

    […] Multi Thread Çalışmanın Avantaj ve Dezavantajları […]

Bir yanıt yazın

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