Eşitleme Öznitelik Değerleri

Eşitleme özniteliği, bileşenlerinizin etkinleştirildiğinde sahip olmasını istediğiniz eşitleme türünü belirten bildirim temelli bir özelliktir. Eşitleme özniteliğini eklediğinizde COM+, eşitlemenin ayrıntılarını sizin yerinize işler; başka arama yapmanıza gerek yoktur.

Bir nesne, gereksinimlerine bağlı olarak çağıranın eşitlemesini paylaşabilir, yeni bir eşitleme gerektirebilir veya eşitleme olmadan çalışabilir.

COM+ aşağıdaki eşitleme özniteliği değerlerini sağlar:

  • Sakat. Eşitleme özniteliğini devre dışı bırakdığınızda, COM+ nesnenin bağlamını belirlerken bileşenin eşitleme gereksinimlerini yoksayar. Sonuç olarak, nesne çağıranın bağlamını (ve eşitlemesini) paylaşabilir veya paylaşamayabilir.

    Genel olarak, bileşenin hiçbir zaman bir kaynak yöneticisine erişmeyeceğini bildiğinizde bu öznitelik değerini kullanmanız gerekir. COM bileşenlerini COM+'ya geçirirken, yapılandırılmamış COM bileşeniyle aynı davranışı sürdürmek için eşitleme özniteliğini devre dışı bırakmanız gerekir. Yapılandırılmamış bir bileşen, COM+ uygulamasına yüklenmemiş bir COM bileşenidir.

  • Desteklenmiyor. Bu değere sahip bir nesne, çağıranın durumundan bağımsız olarak hiçbir zaman eşitlemeye katılmaz. Bu ayar yalnızca işlemsel olmayan ve COM+ tam zamanında (JIT) etkinleştirme hizmetini kullanmayan bileşenler için kullanılabilir.

  • Destekli. Bu değere sahip bir nesne varsa eşitlemeye katılır. Bir nesnenin çağıranın eşitlemesinde paylaşılmasını ancak kendi eşitlemesini gerektirmemesini istediğinizde bu değeri bildirirsiniz.

    Eşitleme özniteliğinizi Desteklenen olarak ayarlamanın iyi bir nedeni, bu ayarın sistem kaynakları açısından daha ucuz olmasıdır. Ancak, bileşeninizi eşzamanlı çağrılardan koruma gereksinimi nedeniyle yazmak daha zordur. Eşitleme özniteliğini Desteklenen olarak ayarlamanın etkisi, belirli koşullar altında nesnenizin bir örneğinin eşitlenmeyecek şekilde oluşturulabileceğidir. Bileşenin iş parçacığı oluşturma modeli Ücretsiz veya Her İkisi ise, örnek verilerinizi bir tür kilitleme mekanizmasıyla korumanız gerekir. İş Parçacığı Modeli Apartman (STA) ise örnek verilerinizi korumanız gerekmez.

  • Gerekli. Bu özniteliği ayarladığınızda, COM+ bileşenden oluşturulan tüm nesnelerin eşitlenmesini sağlar. Aslında COM+ bileşeninizin bir örneğini oluşturduğunda, bu örnekte aynı anda yalnızca bir iş parçacığının geçtiğinden emin olur.

    COM+ bir nesneyi etkinleştirdikçe, çağıranın eşitleme durumuna bakar. Çağıran eşitlenmişse, COM+ çağıranın eşitleme sınırını yeni nesneyi içerecek şekilde akışa alır. Aksi takdirde, COM+ eşitlemeyi başlatır.

  • Yeni gerektirir. Bu değere sahip bir nesne, COM+'nın çağrıya katılan tüm bileşenler adına bağlamları ve daireleri yönettiği yeni bir eşitlemeye katılmalıdır. COM+, çağıranın eşitlemesinden ayrı olan yeni bir eşitlemeyi otomatik olarak başlatır.

    Eşitleme özniteliğinizi Yeni Gerekli olarak ayarlamanın iyi bir nedeni, bu ayarın bileşeninizin bir örneğine daha verimli bir şekilde dışarıdan çağrılar yapmanıza olanak sağlamasıdır. Ancak, nesneniz ile onu oluşturan nesne arasında sistem kaynakları açısından daha pahalı çağrılar yapar.

    Örneğin, nesnenizin ve oluşturucu nesnesinin aynı eşitleme sınırını paylaştığı bir durum varsayalım. A istemcisi oluşturucu nesnesini çağırırsa ve B istemcisi nesnenizi çağırırsa, ikinci çağrının ilk çağrı tamamlanana kadar beklemesi gerekir. Yeni Gerektirir'i ayarlarsanız, nesneniz ayrı bir eşitleme sınırında oluşturulur. Bu durumda, diğer nesnelerden gelen çağrılar aynı anda işlenebilir. Ancak, eşitleme sınırlarını aşmaları gerektiğinden, oluşturucu nesnesinden nesnenize yapılan çağrılar daha fazla sistem kaynağı gerektirir.

Eşitleme Özniteliğini Ayarlama

eşitleme bağımlılıklarını