Condividi tramite


.NET Remoting asincrono

Questo argomento è specifico di una tecnologia legacy mantenuta per una questione di compatibilità con le applicazioni esistenti di versioni precedenti e non è consigliato per il nuovo sviluppo. Le applicazioni distribuite devono ora essere sviluppate utilizzando  Windows Communication Foundation (WCF).

La programmazione asincrona in situazioni di .NET Remoting è identica alla programmazione asincrona in un solo dominio o contesto di applicazione, fatta eccezione per la configurazione e i requisiti .NET Remoting. Per un esempio completo di utilizzo di .NET Remoting e delegati sincroni e asincroni, vedere Esempio di .NET Remoting: .NET Remoting asincrono.

Come la programmazione asincrona nel dominio di una singola applicazione, utilizzare la programmazione asincrona in situazioni di .NET Remoting vuol dire:

  • Il chiamante decide se una particolare chiamata remota è asincrona.

  • I tipi remoti non devono supportare in modo esplicito il comportamento asincrono dei client.

  • La completa indipendenza dai tipi è messa in atto dal runtime.

  • È necessario utilizzare in modo appropriato gli oggetti System.Threading per attendere o sincronizzare i metodi.

In un'applicazione che effettua chiamate attraversando domini di applicazione o limiti di contesto, tuttavia, .NET Remoting, richiede che l'applicazione client venga configurata in modo da poter ricevere chiamate remote dal server (specificando una porta di "0" sul canale client). La ragione di questo requisito è che una volta effettuata una chiamata asincrona non c'è nessun modo di recuperare i risultati della chiamata senza consentire al server di richiamare il client.

Non c'è bisogno che il client estenda MarshalByRefObject o configuri qualsiasi tipo remoto, ma in caso contrario deve seguire le stesse regole che governano qualsiasi tipo remoto destinato a essere utilizzato come server:

  • Il metodo callback dev'essere un metodo di istanza. Le chiamate dei metodi statici non sono remote.

  • Un canale deve essere registrato per attendere la funzione di callback.

Vedere anche

Attività

Procedura: chiamare i metodi di un oggetto remoto in modo asincrono

Concetti

Problemi relativi alla chiamata asincrona ai metodi degli oggetti remoti
Esempio di .NET Remoting: .NET Remoting asincrono
Configurazione di applicazioni remote

Altre risorse

Panoramica di .NET Framework Remoting