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