Multithread

Multithread

Bir süreç (Process) oluşturmak maliyetli ve karmaşıktır. Ancak, bir thread oluşturmak daha kolaydır. Birden fazla iş, birden fazla süreç ile yapılacaksa, çok işlemcili (multiprocessing), birden fazla thread için ise, bir işlemci içerisinde çok çekirdekli yapı kullanılması gerekir. Dolayısıyla, multiprocessing veya multithreading işlemleri için bilgisayar donanımının ve kullanılacak yazılımın bu yapıların gereksinimlerini karşılayabilmesi önemlidir.

Multithreading kullanmanın avantajları şunlardır:
  • Yanıt verebilirlik: Uygulama, kullanıcı isteklerine daha hızlı yanıt verebilir.
  • Kaynak Paylaşımı: Thread’ler, aynı süreç içindeki kaynakları paylaşabilir.
  • Maliyet: Thread oluşturma maliyeti, süreç oluşturma maliyetine göre daha düşüktür.
  • Ölçeklenebilirlik: Çok çekirdekli işlemcilerde daha verimli çalışarak uygulamanın performansını artırır.
Not: Thread ile Process arasındaki en önemli farklardan biri, kaynak paylaşımıdır. Process’ler, kendi adres alanlarında çalışır. Her process, sanal bir adres alarak yalnız başına çalışıyormuş gibi bir ortam yaratılır. Ancak, bir thread, oluşturulduğu process’in adres alanını paylaşır. Bu nedenle, bir thread’in adres değeri değiştiğinde, diğer thread’lerde de değişiklik olur. Yeni bir process oluşturulduğunda ise değişkenin bir kopyası oluşturulur ve iki ayrı değişken üzerinde işlem yapılır.
Multithreading kullanılan client-server mimarisinde, sunucunun kendisi bir process olarak çalışır. Bu process üzerinde birden fazla iş yapılması gerektiğinde, her kullanıcı için ayrı bir thread oluşturulur. Bu sayede, her bir kullanıcıya hızlı yanıt verilebilir.
Not: Process, kol; thread ise parmaklar olarak benzetilebilir. Bir process altında birden fazla thread bulunabilir.

Referanslar

  1. Kocaeli Üniversitesi Doç. Dr. Suhap Şahin
  2. Operating System Concepts, 10th Edition Abraham Silberschatz, Peter B. Galvin, Greg Gagne

Bir yanıt yazın

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

Benzer yazılar

Aramak istediğinizi üstte yazmaya başlayın ve aramak için enter tuşuna basın. İptal için ESC tuşuna basın.

Üste dön