Condividi tramite


MessageFormatterDuplexPipeTracker Classe

Definizione

Supporta le implementazioni IJsonRpcMessageFormatter con supporto del marshalling IDuplexPipe su JSON-RPC.

public class MessageFormatterDuplexPipeTracker : IDisposable, Microsoft.IDisposableObservable
type MessageFormatterDuplexPipeTracker = class
    interface IDisposableObservable
    interface IDisposable
Public Class MessageFormatterDuplexPipeTracker
Implements IDisposable, IDisposableObservable
Ereditarietà
MessageFormatterDuplexPipeTracker
Implementazioni

Commenti

Regole di durata: * Il IDuplexPipe client ha sempre origine e passato come argomento al server. I server non possono tornare IDuplexPipe ai client perché il server non avrà commenti e suggerimenti se il client lo ha eliminato, perdendo risorse. * Il client può inviare solo un IDuplexPipe oggetto in una richiesta (che prevede una risposta). Le notifiche non forniscono al client commenti e suggerimenti che il server l'ha eliminato, perdendo risorse. * Il client termina immediatamente se IDuplexPipe il server restituisce un errore ANY in risposta alla richiesta, poiché il server potrebbe non essere a conoscenza dell'oggetto IDuplexPipe. * Non IDuplexPipe verrà terminato quando viene ricevuta una risposta riuscita dal server. Il client e il server devono negoziare la fine dell'oggetto IDuplexPipe stesso.

Costruttori

MessageFormatterDuplexPipeTracker()

Inizializza una nuova istanza della classe MessageFormatterDuplexPipeTracker.

MessageFormatterDuplexPipeTracker(JsonRpc, IJsonRpcFormatterState)

Inizializza una nuova istanza della classe MessageFormatterDuplexPipeTracker.

Proprietà

MultiplexingStream

Ottiene o imposta il flusso multiplexing usato per creare e accettare i canali.

RequestIdBeingDeserialized

Ottiene o imposta l'ID della richiesta attualmente in fase di deserializzazione per l'uso come chiave in StreamJsonRpc.Reflection.MessageFormatterDuplexPipeTracker.inboundRequestChannelMap.

RequestIdBeingSerialized

Ottiene o imposta l'ID della richiesta attualmente serializzata per l'uso come chiave in StreamJsonRpc.Reflection.MessageFormatterDuplexPipeTracker.outboundRequestChannelMap.

Metodi

Dispose()

Supporta le implementazioni IJsonRpcMessageFormatter con supporto del marshalling IDuplexPipe su JSON-RPC.

Dispose(Boolean)

Elimina le risorse gestite e native mantenute da questa istanza.

GetPipe(Nullable<Int32>)
Obsoleti.

Crea un oggetto IDuplexPipe da un determinato token quando viene ricevuto nel server RPC come argomento del metodo.

GetPipe(Nullable<UInt64>)

Crea un oggetto IDuplexPipe da un determinato token quando viene ricevuto nel server RPC come argomento del metodo.

GetPipeReader(Nullable<Int32>)
Obsoleti.

Crea un PipeReader oggetto da un token specificato quando viene ricevuto nel server RPC come argomento del metodo.

GetPipeReader(Nullable<UInt64>)

Crea un PipeReader oggetto da un token specificato quando viene ricevuto nel server RPC come argomento del metodo.

GetPipeWriter(Nullable<Int32>)
Obsoleti.

Crea un PipeWriter oggetto da un token specificato quando viene ricevuto nel server RPC come argomento del metodo.

GetPipeWriter(Nullable<UInt64>)

Crea un PipeWriter oggetto da un token specificato quando viene ricevuto nel server RPC come argomento del metodo.

GetToken(IDuplexPipe)
Obsoleti.

Crea un token per rappresentare un oggetto IDuplexPipe come trasmesso dal client a un server RPC come argomento del metodo.

GetToken(PipeReader)
Obsoleti.

Crea un token per rappresentare un PipeReader oggetto come trasmesso dal client a un server RPC come argomento del metodo.

GetToken(PipeWriter)
Obsoleti.

Crea un token per rappresentare un PipeWriter oggetto come trasmesso dal client a un server RPC come argomento del metodo.

GetULongToken(IDuplexPipe)

Crea un token per rappresentare un oggetto IDuplexPipe come trasmesso dal client a un server RPC come argomento del metodo.

GetULongToken(PipeReader)

Crea un token per rappresentare un PipeReader oggetto come trasmesso dal client a un server RPC come argomento del metodo.

GetULongToken(PipeWriter)

Crea un token per rappresentare un PipeWriter oggetto come trasmesso dal client a un server RPC come argomento del metodo.

OnResponseReceived(Int64, Boolean)

Notifica a questo localizzatore quando viene ricevuta una risposta a qualsiasi richiesta in modo che possa essere eseguita la pulizia dello stato e del canale appropriata.

OnResponseSent(Object, Boolean)

Notifica a questo tracker quando viene inviata una risposta a qualsiasi richiesta in modo che possa essere eseguita la pulizia del canale e dello stato appropriata.

Implementazioni dell'interfaccia esplicita

IDisposableObservable.IsDisposed

Supporta le implementazioni IJsonRpcMessageFormatter con supporto del marshalling IDuplexPipe su JSON-RPC.

Si applica a