Partager via


MessageHandlerBase Classe

Définition

Classe de base abstraite pour l’envoi et la réception de messages.

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
Héritage
MessageHandlerBase
Dérivé
Implémente

Remarques

Cette classe et ses dérivés sont sûrs d’appeler à partir de n’importe quel thread. Les appels à WriteAsync(JsonRpcMessage, CancellationToken) être protégés par un sémaphore pour garantir l’intégrité des messages et peuvent être effectués à partir de n’importe quel thread. L’appelant doit prendre soin d’appeler ReadAsync(CancellationToken) de manière séquentielle.

Constructeurs

MessageHandlerBase(IJsonRpcMessageFormatter)

Initialise une nouvelle instance de la classe MessageHandlerBase.

Propriétés

CanRead

Obtient une valeur indiquant si ce gestionnaire de messages peut recevoir des messages.

CanWrite

Obtient une valeur indiquant si ce gestionnaire de messages peut envoyer des messages.

DisposalToken

Obtient un jeton qui est annulé lorsque cette instance est supprimée.

Formatter

Obtient le formateur utilisé pour la sérialisation des messages.

Méthodes

Dispose()
Obsolète.

Supprime cette instance et annule toutes les opérations de lecture ou d’écriture en attente.

Dispose(Boolean)

Supprime les ressources allouées par cette instance qui sont communes à la lecture et à l’écriture.

DisposeAsync()

Supprime cette instance et annule toutes les opérations de lecture ou d’écriture en attente.

DisposeReader()

Supprime les ressources allouées par cette instance qui sont utilisées pour la lecture (et non l’écriture).

DisposeWriter()

Supprime les ressources allouées par cette instance qui sont utilisées pour l’écriture (et non la lecture).

FlushAsync(CancellationToken)

Garantit que tous les messages transmis jusqu’à ce point sont en route vers leur destination, plutôt que de rester dans une mémoire tampon locale.

ReadAsync(CancellationToken)

Lit un message distinct et complet à partir du transport, en attendant un message si nécessaire.

ReadCoreAsync(CancellationToken)

Lit un message distinct et complet, en attendant un message si nécessaire.

WriteAsync(JsonRpcMessage, CancellationToken)

Écrit un message dans le transport et vide.

WriteCoreAsync(JsonRpcMessage, CancellationToken)

Écrit un message.

Implémentations d’interfaces explicites

IDisposableObservable.IsDisposed

Obtient une valeur indiquant si cette instance a été supprimée.

S’applique à