Condividi tramite


MessageHandlerBase Classe

Definizione

Classe di base astratta per l'invio e la ricezione di messaggi.

public abstract class MessageHandlerBase : IDisposable, Microsoft.IDisposableObservable, StreamJsonRpc.IJsonRpcMessageHandler
public abstract class MessageHandlerBase : IDisposable, Microsoft.IDisposableObservable, Microsoft.VisualStudio.Threading.IAsyncDisposable, StreamJsonRpc.IJsonRpcMessageHandler
type MessageHandlerBase = class
    interface IJsonRpcMessageHandler
    interface IDisposableObservable
    interface IDisposable
type MessageHandlerBase = class
    interface IJsonRpcMessageHandler
    interface IDisposableObservable
    interface IDisposable
    interface IAsyncDisposable
Public MustInherit Class MessageHandlerBase
Implements IDisposable, IDisposableObservable, IJsonRpcMessageHandler
Public MustInherit Class MessageHandlerBase
Implements IAsyncDisposable, IDisposable, IDisposableObservable, IJsonRpcMessageHandler
Ereditarietà
MessageHandlerBase
Derivato
Implementazioni

Commenti

Questa classe e i relativi derivati sono sicuri da chiamare da qualsiasi thread. Le chiamate a WriteAsync(JsonRpcMessage, CancellationToken) sono protette da un semaforo per garantire l'integrità dei messaggi e possono essere effettuate da qualsiasi thread. Il chiamante deve prestare attenzione a chiamare ReadAsync(CancellationToken) in sequenza.

Costruttori

MessageHandlerBase(IJsonRpcMessageFormatter)

Inizializza una nuova istanza della classe MessageHandlerBase.

Proprietà

CanRead

Ottiene un valore che indica se questo gestore messaggi può ricevere messaggi.

CanWrite

Ottiene un valore che indica se questo gestore messaggi può inviare messaggi.

DisposalToken

Ottiene un token annullato quando questa istanza viene eliminata.

Formatter

Ottiene il formattatore usato per la serializzazione dei messaggi.

Metodi

Dispose()
Obsoleti.

Elimina questa istanza e annulla le operazioni di lettura o scrittura in sospeso.

Dispose(Boolean)

Elimina le risorse allocate da questa istanza comune sia alla lettura che alla scrittura.

DisposeAsync()

Elimina questa istanza e annulla le operazioni di lettura o scrittura in sospeso.

DisposeReader()

Elimina le risorse allocate da questa istanza che vengono usate per la lettura (non scrittura).

DisposeWriter()

Elimina le risorse allocate da questa istanza che vengono usate per la scrittura (non lettura).

FlushAsync(CancellationToken)

Assicura che tutti i messaggi trasmessi fino a questo punto siano instradati alla destinazione, anziché seduti in un buffer locale.

ReadAsync(CancellationToken)

Legge un messaggio distinto e completo dal trasporto, in attesa di uno se necessario.

ReadCoreAsync(CancellationToken)

Legge un messaggio distinto e completo, in attesa di uno se necessario.

WriteAsync(JsonRpcMessage, CancellationToken)

Scrive un messaggio nel trasporto e scaricamento.

WriteCoreAsync(JsonRpcMessage, CancellationToken)

Scrive un messaggio.

Implementazioni dell'interfaccia esplicita

IDisposableObservable.IsDisposed

Ottiene un valore che indica se questa istanza è stata eliminata.

Si applica a