Partilhar via


MessageHandlerBase Classe

Definição

Uma classe base abstrata para enviar e receber mensagens.

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
Herança
MessageHandlerBase
Derivado
Implementações

Comentários

Essa classe e seus derivados são seguros para chamar de qualquer thread. As chamadas são WriteAsync(JsonRpcMessage, CancellationToken) protegidas por um semáforo para garantir a integridade da mensagem e podem ser feitas de qualquer thread. O chamador deve ter cuidado para chamar ReadAsync(CancellationToken) sequencialmente.

Construtores

MessageHandlerBase(IJsonRpcMessageFormatter)

Inicializa uma nova instância da classe MessageHandlerBase.

Propriedades

CanRead

Obtém um valor que indica se esse manipulador de mensagens pode receber mensagens.

CanWrite

Obtém um valor que indica se esse manipulador de mensagens pode enviar mensagens.

DisposalToken

Obtém um token que é cancelado quando essa instância é descartada.

Formatter

Obtém o formatador usado para serialização de mensagens.

Métodos

Dispose()
Obsoleto.

Descarta essa instância e cancela todas as operações pendentes de leitura ou gravação.

Dispose(Boolean)

Descarta recursos alocados por essa instância que são comuns à leitura e à gravação.

DisposeAsync()

Descarta essa instância e cancela todas as operações pendentes de leitura ou gravação.

DisposeReader()

Descarta recursos alocados por essa instância que são usados para leitura (não gravação).

DisposeWriter()

Descarta recursos alocados por essa instância que são usados para gravação (não leitura).

FlushAsync(CancellationToken)

Garante que todas as mensagens transmitidas até esse ponto estejam a caminho de seu destino, em vez de sentarem em algum buffer local.

ReadAsync(CancellationToken)

Lê uma mensagem distinta e completa do transporte, aguardando uma, se necessário.

ReadCoreAsync(CancellationToken)

Lê uma mensagem distinta e completa, aguardando uma, se necessário.

WriteAsync(JsonRpcMessage, CancellationToken)

Grava uma mensagem no transporte e libera.

WriteCoreAsync(JsonRpcMessage, CancellationToken)

Grava uma mensagem.

Implantações explícitas de interface

IDisposableObservable.IsDisposed

Obtém um valor que indica se essa instância foi descartada.

Aplica-se a