|
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
|
Traducción
Original
|
AppDomain.DoCallBack (Método)
Espacio de nombres: System
Ensamblado: mscorlib (en mscorlib.dll)
Parámetros
- callBackDelegate
- Tipo: System.CrossAppDomainDelegate
Delegado que especifica un método al que se va a llamar.
Implementaciones
_AppDomain.DoCallBack(CrossAppDomainDelegate)| Excepción | Condición |
|---|---|
| ArgumentNullException |
static string greetings = "PONG!"; public static void Main() { AppDomain otherDomain = AppDomain.CreateDomain("otherDomain"); greetings = "PING!"; MyCallBack(); otherDomain.DoCallBack(new CrossAppDomainDelegate(MyCallBack)); // Output: // PING! from defaultDomain // PONG! from otherDomain } static public void MyCallBack() { string name = AppDomain.CurrentDomain.FriendlyName; if (name == AppDomain.CurrentDomain.SetupInformation.ApplicationName) { name = "defaultDomain"; } Console.WriteLine(greetings + " from " + name); }
[Serializable] public class PingPong { private string greetings = "PING!"; public static void Main() { AppDomain otherDomain = AppDomain.CreateDomain("otherDomain"); PingPong pp = new PingPong(); pp.MyCallBack(); pp.greetings = "PONG!"; otherDomain.DoCallBack(new CrossAppDomainDelegate(pp.MyCallBack)); // Output: // PING! from defaultDomain // PONG! from otherDomain } public void MyCallBack() { string name = AppDomain.CurrentDomain.FriendlyName; if (name == AppDomain.CurrentDomain.SetupInformation.ApplicationName) { name = "defaultDomain"; } Console.WriteLine(greetings + " from " + name); } }
public class PingPong : MarshalByRefObject { private string greetings = "PING!"; public static void Main() { AppDomain otherDomain = AppDomain.CreateDomain("otherDomain"); PingPong pp = new PingPong(); pp.MyCallBack(); pp.greetings = "PONG!"; otherDomain.DoCallBack(new CrossAppDomainDelegate(pp.MyCallBack)); // Output: // PING! from defaultDomain // PONG! from defaultDomain } // Callback will always execute within defaultDomain due to inheritance from // MarshalByRefObject public void MyCallBack() { string name = AppDomain.CurrentDomain.FriendlyName; if (name == AppDomain.CurrentDomain.SetupInformation.ApplicationName) { name = "defaultDomain"; } Console.WriteLine(greetings + " from " + name); } }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)
.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.