Multithreading
Multithreading, aynı uygulama içinde ve aynı anda birbirinden bağımsız koşan bir
çok akışı içeren bir mimaridir. Üst düzey performansa ihtiyaç duyulan, bir çok istemciye
aynı anda cevap verilmesi gereken durumlar için kaçınılmaz bir mimaridir. Yüksek
performans gerektiren gerçek zamanlı uygulamalarda multithreading kullanmamak, istemcilere
yanıtın gecikmeli verilmesi veya hiç verilememesine sebep olabilir.
Multithreading ilk bakışta istemci-sunucu (client-server)
mimarisindeki uygulamalarda sadece sunucu tarafında ihtiyaç duyulabilecek bir kavram
gibi görünebilir. Ancak bütün ciddi windows uygulamaları multithreading mimarisinden
yararlanır veya yararlanması gerekir. Diyelim muhasebe uygulamanız belirli aralıklarla
veritabanınıza erişiyor ve gerekli işlemleri veritabanı ile birlikte yürütüyor.
Veritanına erişimin ayrı bir "thread"e koyulmaması, veritabanındaki ya
da ağdaki herhangi bir yavaşlamanın doğrudan muhasebe uygulamanıza da yansımasına
sebep olacaktır.
Multithreading, yararları çok olmakla birlikte birtakım tehlikeler de barındırır.
Bu yüzden tasarlaması, uygulaması ve testi de uzmanlık gerektiren bir mimaridir.
Yeterince dikkatli tasarlanmamış bir multithreaded mimaride "thread"lerin
birbirini bekler durumda kalması durumu olan deadlock kaçınılmazdır.
PortakalOfis Türkiye'nin en yoğun kullanılan Multithreaded mimarisine sahip
uygulaması olan SupportAlive
sunucu ve istemcisini geliştiren firma olarak, konu hakkında yıllara dayanan tecrübesini,
konusunda uzman mühendislerden kurulmuş bir ekiple sizinle paylaşmaktan mutluluk
duyacaktır.
<- Makaleler Sayfasına Dön