Bir işlemdeki her bir uygulama etki alanı için oluşturulmuş bir genel statik değişkenin bir kopyası mı yoksa tüm işlem için yalnızca bir kopyası mı? Diğer bir deyişle, statik bir değişkenin değerini bir AppDomain içinden değiştirirsem, aynı işlemdeki başka bir AppDomain içindeki aynı statik değişkenin değerini etkiler mi?In .Net, bir AppDomain veya tüm işlemle sınırlı bir genel statik değişkenin 'Staticness' dir?
5
A
cevap
10
Bu örnekte de kanıtlandığı gibi, bu uygulama alanı sayısı:
public class Foo
{
public static string Bar { get; set; }
}
public class Test
{
public Test()
{
Console.WriteLine("Second AppDomain: {0}", Foo.Bar);
}
}
class Program
{
static void Main()
{
// Set some value in the main appdomain
Foo.Bar = "bar";
Console.WriteLine("Main AppDomain: {0}", Foo.Bar);
// create a second domain
var domain = AppDomain.CreateDomain("SecondAppDomain");
// instantiate the Test class in the second domain
// the constructor of the Test class will print the value
// of Foo.Bar inside this second domain and it will be null
domain.CreateInstance(Assembly.GetExecutingAssembly().FullName, "Test");
}
}
0
Bu uygulama etki alanı ile sınırlıdır, başka bir deyişle, bir değişken değerin her uygulama etki alanı içinde ayrı bir değer olarak bulunmaktadır.
İlgili konular
- 1. Statik Alanlar AppDomain
- 2. Komut ls veya dir in ghci
- 3. Sadece statik bir değişkenin atanması senkronizasyonu
- 4. Bir değişkenin tanımı neden C++ 11'in gelişimi sırasında değişti?
- 5. AppDomain
- 6. Ortak bir kitaplıktan genel bir değişkenin harita kümeleriyle eşleştirilmesi
- 7. Scala: bir sınıftaki genel statik final
- 8. Statik bir bağlamda genel türleri kullanma
- 9. Statik değişkenin başlangıç değerinin doxygen değerini,
- 10. Tüm değişkenleri genel yapmak
- 11. Ardışık olarak dir() belirli bir değere veya belirli bir değere sahip olan bir python nesnesini veya belirli bir değerle
- 12. MySqlBulkLoader bir işlemle kullanılabilir mi?
- 13. Değişkenin karesi için bir denklem çözme?
- 14. Android - Uygulama veya işlemle bant genişliği kullanımı nasıl izlenir?
- 15. Tüm montaj için statik yapıcı
- 16. AutoMapper Nasıl Yapılandırılır AppDomain Başına Bir Uygulama
- 17. Statik html Files in Cherrypy
- 18. LWT bir alt işlemle basit etkileşim
- 19. COM, derleme yüklemesi için .NET AppDomain sınırlarına uyuyor mu?
- 20. Console.Write in .Net Çekirdeği
- 21. Scala ve belirli bir işlemle bağlı sınama
- 22. Environment.CurrentDirectory in C#. NET
- 23. Bir değişkenin bir nesne olduğundan emin olun
- 24. Mantıksal bir işlemle ilgili karşılık gelen satırlar
- 25. Genel değişkenler C# .net
- 26. Bir değişkenin türünü alın ve
- 27. İlk olarak adlandırılan DllMain() veya genel statik nesne yapıcısı?
- 28. Erlang belirli bir dir için ana dir ismi nasıl alınır?
- 29. Dinamik olarak genel statik oluşturma
- 30. 'NOT IN' veya .not()
Teşekkürler. Şimdiye kadar en iyi cevap! – Harindaka
Örnek programı çalıştırmayı denediğimde, TypeLoadException iletisiyle ileti alıyorum 'Test' türünü yüklenemedi 'ConsoleApplication1, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null'. HResult 80131522'dir. – DWright