Aracılığıyla paylaş


Adlandırılmış Kanal Örnekleri

En basit kanal sunucusu bir kanalın tek bir örneğini oluşturur, tek bir istemciye bağlanır, istemciyle iletişim kurar, istemciyle bağlantıyı keser, kanal tutamacını kapatır ve sonlandırır. Ancak, bir kanal sunucusunun birden çok kanal istemcisiyle iletişim kurması daha yaygındır. Bir kanal sunucusu, her istemciye sırayla bağlanıp bağlantıyı keserek birden çok kanal istemcisine bağlanmak için tek bir kanal örneği kullanabilir, ancak performans düşük olabilir. Kanal sunucusunun aynı anda birden çok istemciyi verimli bir şekilde işlemek için birden çok kanal örneği oluşturması gerekir.

Birden çok kanal örneğine hizmet için üç temel strateji vardır.

Her örneğin iş parçacığı tek bir kanal istemcisinin iletişimlerini işlediğinden, çok iş parçacıklı kanal sunucusu yazması en kolay yoludur. Sistem, gerektiğinde her iş parçacığına işlemci süresi ayırır. Ancak her iş parçacığı, çok sayıda istemci işleyen bir kanal sunucusu için dezavantaj olan sistem kaynaklarını kullanır.

Tek iş parçacıklı bir sunucuyla, birden çok istemciyi etkileyen işlemleri koordine etmek daha kolaydır ve paylaşılan kaynakları birden çok istemci tarafından aynı anda erişime karşı korumak daha kolaydır. Tek iş parçacıklı bir sunucunun zorluğu, istemcilerin eşzamanlı gereksinimlerini işlemek için işlemci süresini ayırmak için çakışan işlemlerin koordinasyonunu gerektirmesidir.