Lingua

MessageFormatterDuplexPipeTracker Classe

Definizione

Assiste le IJsonRpcMessageFormatter implementazioni con il 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: * L'oggetto IDuplexPipe ha sempre origine sul client e passato come argomento al server. I server non possono tornare IDuplexPipe ai client perché il server non avrebbe alcun feedback se il client lo ha eliminato, perdendo risorse. * Il client può inviare un oggetto IDuplexPipe solo in una richiesta (che prevede una risposta). Le notifiche non forniscono al client commenti e suggerimenti sul fatto che il server l'ha eliminata, perdendo risorse. * Il client terminerà IDuplexPipe immediatamente se il server restituisce un errore ANY in risposta alla richiesta, perché il server potrebbe non essere a conoscenza di IDuplexPipe. * L'oggetto IDuplexPipe NON verrà terminato quando viene ricevuta una risposta corretta dal server. Il client e il server devono negoziare la fine di IDuplexPipe se stessi.

Costruttori

Nome Descrizione
MessageFormatterDuplexPipeTracker()

Inizializza una nuova istanza della classe MessageFormatterDuplexPipeTracker.

MessageFormatterDuplexPipeTracker(JsonRpc, IJsonRpcFormatterState)

Inizializza una nuova istanza della classe MessageFormatterDuplexPipeTracker.

Proprietà

Nome Descrizione
MultiplexingStream

Ottiene o imposta il flusso di multiplexing utilizzato per creare e accettare canali.

RequestIdBeingDeserialized

Ottiene o imposta l'ID della richiesta attualmente in fase di deserializzazione da utilizzare 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

Nome Descrizione
Dispose()

Assiste le IJsonRpcMessageFormatter implementazioni con il 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 oggetto PipeReader da un determinato token quando viene ricevuto nel server RPC come argomento del metodo.

GetPipeReader(Nullable<UInt64>)

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

GetPipeWriter(Nullable<Int32>)
Obsoleti.

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

GetPipeWriter(Nullable<UInt64>)

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

GetToken(IDuplexPipe)
Obsoleti.

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

GetToken(PipeReader)
Obsoleti.

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

GetToken(PipeWriter)
Obsoleti.

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

GetULongToken(IDuplexPipe)

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

GetULongToken(PipeReader)

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

GetULongToken(PipeWriter)

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

OnResponseReceived(Int64, Boolean)

Notifica a questo tracker quando viene ricevuta una risposta a qualsiasi richiesta in modo che possa essere eseguita la pulizia del canale e dello stato 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

Nome Descrizione
IDisposableObservable.IsDisposed

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

Si applica a