次の方法で共有


MethodDispatcherBase.DispatchAsync メソッド

定義

オーバーロード

DispatchAsync(Object, Int32, Object, CancellationToken)

このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に要求をディスパッチするために使用されます。

DispatchAsync(Object, Int32, IServiceRemotingRequestMessageBody, IServiceRemotingMessageBodyFactory, CancellationToken)

クラス レベルで設定するのではなく、IServiceRemotingMessageBodyFactory をこの関数に渡す理由。 各インターフェイスの MethodDispatcher をキャッシュするため、クラス レベルで IServiceRemotingMessageBodyFactory を設定することはできません。 これらは、複数の IServiceRemotingMessageBodyFactory implmenetation が 1 つのディスパッチャー クラスである場合があります。 このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に要求をディスパッチするために使用されます。

DispatchAsync(Object, Int32, Object, CancellationToken)

このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に要求をディスパッチするために使用されます。

public override System.Threading.Tasks.Task<object> DispatchAsync (object objectImplementation, int methodId, object requestBody, System.Threading.CancellationToken cancellationToken);
override this.DispatchAsync : obj * int * obj * System.Threading.CancellationToken -> System.Threading.Tasks.Task<obj>
Public Overrides Function DispatchAsync (objectImplementation As Object, methodId As Integer, requestBody As Object, cancellationToken As CancellationToken) As Task(Of Object)

パラメーター

objectImplementation
Object

オブジェクトはリモート インターフェイスを補完しました。

methodId
Int32

要求のディスパッチ先となるメソッドの ID。

requestBody
Object

オブジェクトにディスパッチする必要がある要求オブジェクトの本文。

cancellationToken
CancellationToken

この操作が取り消された場合に通知されるキャンセル トークン。

戻り値

実装オブジェクトに対する未処理の非同期呼び出しを表すタスク。 タスクの戻り値には、呼び出されたメソッドから返された値が含まれています。

適用対象

DispatchAsync(Object, Int32, IServiceRemotingRequestMessageBody, IServiceRemotingMessageBodyFactory, CancellationToken)

クラス レベルで設定するのではなく、IServiceRemotingMessageBodyFactory をこの関数に渡す理由。 各インターフェイスの MethodDispatcher をキャッシュするため、クラス レベルで IServiceRemotingMessageBodyFactory を設定することはできません。 これらは、複数の IServiceRemotingMessageBodyFactory implmenetation が 1 つのディスパッチャー クラスである場合があります。 このメソッドは、リモート オブジェクトによって実装されたインターフェイスの指定された methodId に要求をディスパッチするために使用されます。

public System.Threading.Tasks.Task<Microsoft.ServiceFabric.Services.Remoting.V2.IServiceRemotingResponseMessageBody> DispatchAsync (object objectImplementation, int methodId, Microsoft.ServiceFabric.Services.Remoting.V2.IServiceRemotingRequestMessageBody requestBody, Microsoft.ServiceFabric.Services.Remoting.V2.IServiceRemotingMessageBodyFactory remotingMessageBodyFactory, System.Threading.CancellationToken cancellationToken);
override this.DispatchAsync : obj * int * Microsoft.ServiceFabric.Services.Remoting.V2.IServiceRemotingRequestMessageBody * Microsoft.ServiceFabric.Services.Remoting.V2.IServiceRemotingMessageBodyFactory * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.ServiceFabric.Services.Remoting.V2.IServiceRemotingResponseMessageBody>
Public Function DispatchAsync (objectImplementation As Object, methodId As Integer, requestBody As IServiceRemotingRequestMessageBody, remotingMessageBodyFactory As IServiceRemotingMessageBodyFactory, cancellationToken As CancellationToken) As Task(Of IServiceRemotingResponseMessageBody)

パラメーター

objectImplementation
Object

オブジェクトはリモート インターフェイスを補完しました。

methodId
Int32

要求のディスパッチ先となるメソッドの ID。

requestBody
IServiceRemotingRequestMessageBody

オブジェクトにディスパッチする必要がある要求オブジェクトの本文。

remotingMessageBodyFactory
IServiceRemotingMessageBodyFactory

IServiceRemotingMessageBodyFactory implementaion

cancellationToken
CancellationToken

この操作が取り消された場合に通知されるキャンセル トークン。

戻り値

実装オブジェクトに対する未処理の非同期呼び出しを表すタスク。 タスクの戻り値には、呼び出されたメソッドから返された値が含まれています。

適用対象