語言

MessageHandlerBase 類別

定義

一個用於傳送與接收訊息的抽象基底類別。

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
繼承
MessageHandlerBase
衍生
實作

備註

此類別及其衍生型可從任何執行緒安全呼叫。 呼叫 WriteAsync(JsonRpcMessage, CancellationToken) 會受到信號量保護,以確保訊息完整性,且可從任何執行緒發出。 來電者必須依序撥打 ReadAsync(CancellationToken) 。

建構函式

名稱 Description
MessageHandlerBase(IJsonRpcMessageFormatter)

初始化 MessageHandlerBase 類別的新執行個體。

屬性

名稱 Description
CanRead

會獲得一個值,表示此訊息處理器是否能接收訊息。

CanWrite

會獲得一個值,表示該訊息處理器是否能發送訊息。

DisposalToken

會獲得一個標記,當這個實例被處理時會被取消。

Formatter

取得用於訊息序列化的格式化器。

方法

名稱 Description
Dispose()
已淘汰.

處理此實例,並取消所有待處理的讀寫操作。

Dispose(Boolean)

處置此實例分配的閱讀與書寫共同資源。

DisposeAsync()

處理此實例,並取消所有待處理的讀寫操作。

DisposeReader()

處置此實例分配的用於讀取(非寫入)的資源。

DisposeWriter()

處置此實例分配的用於寫入(非讀取)的資源。

FlushAsync(CancellationToken)

確保所有在此之前傳送的訊息都在傳送到目的地,而非停留在某個本地緩衝區中。

ReadAsync(CancellationToken)

讀取來自運輸機的明確且完整的訊息,必要時等待訊息。

ReadCoreAsync(CancellationToken)

讀取一段明確且完整的訊息,必要時等待。

WriteAsync(JsonRpcMessage, CancellationToken)

寫訊息給運輸車並沖水。

WriteCoreAsync(JsonRpcMessage, CancellationToken)

寫訊息。

明確介面實作

名稱 Description
IDisposableObservable.IsDisposed

會獲得一個值,表示該實例是否已被處置。

適用於