studio programacion para libros libro edición desarrollo desarrollar aprende aplicaciones .net variables static scope appdomain

.net - para - manual de programacion android pdf



En.Net, ¿está la "Estática" de una variable estática pública limitada a un Dominio de aplicación o a todo el proceso? (2)

Es por dominio de aplicación como lo demuestra este ejemplo:

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"); } }

¿Se ha creado una copia de una variable estática pública para cada dominio de aplicación en un proceso o solo se trata de una copia para todo el proceso? En otras palabras, si cambio el valor de una variable estática dentro de un Dominio de aplicación, ¿afectará el valor de la misma variable estática dentro de otro Dominio de aplicación en el mismo proceso?


Está limitado a AppDomain, en otras palabras, la variable existe como un valor separado en cada AppDomain.