MessageFormatterDuplexPipeTracker クラス

定義

JSON-RPC を介したIDuplexPipeのマーシャリングをサポートすることで、IJsonRpcMessageFormatter実装を支援します。

public class MessageFormatterDuplexPipeTracker : IDisposable, Microsoft.IDisposableObservable
type MessageFormatterDuplexPipeTracker = class
    interface IDisposableObservable
    interface IDisposable
Public Class MessageFormatterDuplexPipeTracker
Implements IDisposable, IDisposableObservable
継承
MessageFormatterDuplexPipeTracker
実装

注釈

有効期間ルール: * IDuplexPipe は常にクライアントから生成され、サーバーに引数として渡されます。 サーバーは IDuplexPipe をクライアントに返すことはできません。クライアントが削除した場合、サーバーはフィードバックを受け取らず、リソースがリークします。 * クライアントは要求内の IDuplexPipe のみを送信できます (応答が必要です)。 通知では、サーバーによって削除されたというフィードバックがクライアントに提供されず、リソースがリークします。 * クライアントは、サーバーが要求に応答して ANY エラーを返した場合、IDuplexPipeを認識していない可能性があるため、IDuplexPipeを直ちに終了します。 * サーバーから正常な応答を受信した場合、 IDuplexPipe は終了しません。 クライアントとサーバーは、 IDuplexPipe 自体の終了をネゴシエートすることが期待されます。

コンストラクター

名前 説明
MessageFormatterDuplexPipeTracker()

MessageFormatterDuplexPipeTracker クラスの新しいインスタンスを初期化します。

MessageFormatterDuplexPipeTracker(JsonRpc, IJsonRpcFormatterState)

MessageFormatterDuplexPipeTracker クラスの新しいインスタンスを初期化します。

プロパティ

名前 説明
MultiplexingStream

チャネルの作成と受け入れに使用される多重化ストリームを取得または設定します。

RequestIdBeingDeserialized

StreamJsonRpc.Reflection.MessageFormatterDuplexPipeTracker.inboundRequestChannelMapでキーとして使用するために現在逆シリアル化されている要求の ID を取得または設定します。

RequestIdBeingSerialized

StreamJsonRpc.Reflection.MessageFormatterDuplexPipeTracker.outboundRequestChannelMapでキーとして使用するために現在シリアル化されている要求の ID を取得または設定します。

メソッド

名前 説明
Dispose()

JSON-RPC を介したIDuplexPipeのマーシャリングをサポートすることで、IJsonRpcMessageFormatter実装を支援します。

Dispose(Boolean)

このインスタンスによって保持されているマネージド リソースとネイティブ リソースを破棄します。

GetPipe(Nullable<Int32>)
古い.

メソッド引数として RPC サーバーで受け取る特定のトークンから IDuplexPipe を作成します。

GetPipe(Nullable<UInt64>)

メソッド引数として RPC サーバーで受け取る特定のトークンから IDuplexPipe を作成します。

GetPipeReader(Nullable<Int32>)
古い.

メソッド引数として RPC サーバーで受け取る特定のトークンから PipeReader を作成します。

GetPipeReader(Nullable<UInt64>)

メソッド引数として RPC サーバーで受け取る特定のトークンから PipeReader を作成します。

GetPipeWriter(Nullable<Int32>)
古い.

メソッド引数として RPC サーバーで受け取る特定のトークンから PipeWriter を作成します。

GetPipeWriter(Nullable<UInt64>)

メソッド引数として RPC サーバーで受け取る特定のトークンから PipeWriter を作成します。

GetToken(IDuplexPipe)
古い.

クライアントから RPC サーバーにメソッド引数として送信される IDuplexPipe を表すトークンを作成します。

GetToken(PipeReader)
古い.

クライアントから RPC サーバーにメソッド引数として送信される PipeReader を表すトークンを作成します。

GetToken(PipeWriter)
古い.

クライアントから RPC サーバーにメソッド引数として送信される PipeWriter を表すトークンを作成します。

GetULongToken(IDuplexPipe)

クライアントから RPC サーバーにメソッド引数として送信される IDuplexPipe を表すトークンを作成します。

GetULongToken(PipeReader)

クライアントから RPC サーバーにメソッド引数として送信される PipeReader を表すトークンを作成します。

GetULongToken(PipeWriter)

クライアントから RPC サーバーにメソッド引数として送信される PipeWriter を表すトークンを作成します。

OnResponseReceived(Int64, Boolean)

適切なチャネルと状態のクリーンアップを実行できるように、要求への応答が受信されたときに、このトラッカーに通知します。

OnResponseSent(Object, Boolean)

適切なチャネルと状態のクリーンアップを実行できるように、要求への応答が送信されたときに、このトラッカーに通知します。

明示的なインターフェイスの実装

名前 説明
IDisposableObservable.IsDisposed

JSON-RPC を介したIDuplexPipeのマーシャリングをサポートすることで、IJsonRpcMessageFormatter実装を支援します。

適用対象