Compartir a través de


Problemas con llamadas asincrónicas a métodos de objetos remotos

Este tema es específico de una tecnología heredada que se mantiene para la compatibilidad con versiones anteriores con aplicaciones existentes y no se recomienda para nuevo desarrollo. Las aplicaciones distribuidas se deberían desarrollar utilizando  Windows Communication Foundation (WCF).

Si un cliente .NET Remoting es una clase enlazada a un contexto que requiere un contexto sincronizado, la función de devolución de llamada se envía a través de la infraestructura del contexto remota de .NET Framework. Esto significa que la misma función de devolución de llamada se puede ejecutar de forma asincrónica con respecto a su llamador para tales contextos. Este fue también el comportamiento del atributo OneWayAttribute cuando se aplicó a las firmas del método de devolución de llamada. Cualquier función de devolución de llamada de método puede ejecutarse de forma sincrónica o asincrónica con respecto al llamador remoto, y el llamador no puede hacer ninguna suposición sobre la realización de este tipo de llamada cuando el control de ejecución vuelve a él.

7khbsf39.note(es-es,VS.100).gifNota:
Llamar al método EndInvoke antes de que la operación asincrónica haya finalizado por segunda vez con el mismo IAsyncResult es indefinido.

En las versiones 1.0 y 1.1 de .NET Framework se invoca una segunda vez un delegado asincrónico que produce una excepción. En la versión 2.0 de .NET Framework, el delegado se invoca solo una vez.

Vea también

Conceptos

Ejemplo de comunicación remota: comunicación remota asincrónica
Configuración de aplicaciones remotas

Otros recursos

Información general de servicios remotos de .NET Framework