Aracılığıyla paylaş


Yan Yana Çalıştırma için Bileşen Tasarlama Yönergeleri

Uyarı

Bu makale .NET Framework'e özgüdür. .NET 6 ve sonraki sürümleri de dahil olmak üzere daha yeni .NET uygulamaları için geçerli değildir.

Yan yana yürütme için tasarlanmış yönetilen uygulamalar veya bileşenler oluşturmak için şu genel yönergeleri izleyin:

  • Tür kimliğini bir dosyanın belirli bir sürümüne bağlayın.

    Ortak dil çalışma zamanı, güçlü adlandırılmış derlemeler kullanarak tür kimliğini belirli bir dosya versiyonuna bağlar. Yan yana yürütme için bir uygulama veya bileşen oluşturmak için tüm derlemelere kesin bir ad vermeniz gerekir. Bu, kesin tür kimliği oluşturur ve her tür çözümlemesinin doğru dosyaya yönlendirilmesini sağlar. Çalışma zamanının bağlama isteğini yerine getirmek için doğru dosyayı almak amacıyla kullandığı güçlü adla isimlendirilmiş derleme; sürüm, kültür ve yayımcı bilgilerini içerir.

  • Sürüm bilgisine sahip depolamayı kullanın.

    Çalışma zamanı, sürüme duyarlı depolama sağlamak için genel derleme önbelleğini kullanır. Genel derleme önbelleği, .NET Framework kullanan her bilgisayarda yüklü olan, sürüm farkındalığına sahip bir dizin yapısıdır. Bir derlemenin yeni bir sürümü yüklendiğinde küresel derleme önbelleğine yüklenen derlemelerin üzerine yazılmaz.

  • Yalıtımlı olarak çalışan bir uygulama veya bileşen oluşturun.

    Yalıtılan bir uygulama veya bileşen, uygulamanın veya bileşenin iki örneği aynı anda çalışırken çakışmaları önlemek için kaynakları yönetmelidir. Uygulama veya bileşen de sürüme özgü bir dosya yapısı kullanmalıdır.

Uygulama ve Bileşen Yalıtımı

Bir uygulamayı veya bileşeni yan yana yürütme için başarıyla tasarlamanın bir anahtarı yalıtımdır. Uygulama veya bileşen tüm kaynakları, özellikle de dosya G/Ç'yi yalıtılmış bir şekilde yönetmelidir. Uygulamanızın veya bileşeninizin yalıtıldığından emin olmak için şu yönergeleri izleyin:

  • Kayıt defterine sürüme özgü bir şekilde yazın. Değerleri, sürümü gösteren ve bir bileşenin sürümleri arasında bilgi veya durum paylaşmayan kovanlarda veya anahtarlarda depolayın. Bu, aynı anda çalışan iki uygulamanın veya bileşenin bilgilerin üzerine yazılmasını engeller.

  • Bir yarış koşulu oluşmaması için adlandırılmış çekirdek nesneleri sürümüne özgü hale getirin. Örneğin, aynı uygulamanın iki sürümünden iki semafor birbirini beklediğinde bir yarış durumu oluşur.

  • Dosya ve dizin adlarını sürüme duyarlı hale getirin. Bu, dosya yapılarının sürüm bilgilerine güvenmesi gerektiği anlamına gelir.

  • Belirli bir sürüme özgü olarak kullanıcı hesapları ve grupları oluşturun. Bir uygulama tarafından oluşturulan kullanıcı hesapları ve grupları sürüme göre tanımlanmalıdır. Bir uygulamanın sürümleri arasında kullanıcı hesaplarını ve grupları paylaşmayın.

Sürümleri Yükleme ve Kaldırma

Bir uygulamayı yan yana yürütme için tasarlarken, sürümleri yükleme ve kaldırma ile ilgili şu yönergeleri izleyin:

  • Kayıt defterinden farklı bir .NET Framework sürümü altında çalışan diğer uygulamalar için gerekli olabilecek bilgileri silmeyin.

  • Kayıt defterindeki farklı bir .NET Framework sürümü altında çalışan diğer uygulamalar için gerekli olabilecek bilgileri değiştirmeyin.

  • .NET Framework'ün farklı bir sürümü altında çalışan diğer uygulamalar için gerekli olabilecek COM bileşenlerinin kaydını silmeyin.

  • Önceden kaydedilmiş bir COM sunucusu için InprocServer32 veya diğer kayıt defteri girdilerini değiştirmeyin.

  • .NET Framework'ün farklı bir sürümü altında çalışan diğer uygulamalar için gerekli olabilecek kullanıcı hesaplarını veya grupları silmeyin.

  • Kayıt defterine, ters çevrilmemiş yol içeren hiçbir şey eklemeyin.

Dosya Sürüm Numarası ve Derleme Sürüm Numarası

Dosya sürümü, çalışma zamanı tarafından kullanılmayan bir Win32 sürüm kaynağıdır. Genel olarak, yerinde güncelleştirme için bile dosya sürümünü güncelleştirirsiniz. İki özdeş dosya farklı dosya sürümü bilgilerine ve iki farklı dosya da aynı dosya sürümü bilgilerine sahip olabilir.

Derleme sürümü, derleme bağlaması için çalışma zamanı tarafından kullanılır. Farklı sürüm numaralarına sahip iki özdeş derleme, çalışma zamanı tarafından iki farklı derleme olarak değerlendirilir.

Genel Derleme Önbelleği aracı (Gacutil.exe), yalnızca dosya sürüm numarası daha yeni olduğunda bir derlemeyi değiştirmenize olanak tanır. Yükleyici, genellikle bir derlemenin üzerine, o derlemenin sürüm numarası daha büyük olmadıkça yüklemez.

Ayrıca bakınız