---
# System prepended metadata

title: gRPC 通信方式の詳細 2021-10-04
tags: [通信方式, gRPC, Grpc.Core.CallInvoker]

---

---
lang: ja-jp
breaks: true
---
# gRPC 通信方式の詳細 2021-10-04

> Class CallInvoker
> https://grpc.github.io/grpc/csharp-dotnet/api/Grpc.Core.CallInvoker.html

> grpc/src/csharp/Grpc.Core.Api/CallInvoker.cs
> https://github.com/grpc/grpc/blob/master/src/csharp/Grpc.Core.Api/CallInvoker.cs

## `CallInvoker`クラス

### `TResponse BlockingUnaryCall<TRequest, TResponse>`

> ブロッキング方式でシンプルなリモートコールを呼び出します。

### `AsyncUnaryCall<TResponse> AsyncUnaryCall<TRequest, TResponse>`

> シンプルなリモートコールを非同期に呼び出します。

### `AsyncServerStreamingCall<TResponse> AsyncServerStreamingCall<TRequest, TResponse>`

> 非同期にサーバーストリーミングコールを呼び出します。
> サーバーストリーミングのシナリオではクライアントが単一のリクエストを送信し、サーバーが複数のレスポンスをストリーミングで応答します。

### `AsyncClientStreamingCall<TRequest, TResponse> AsyncClientStreamingCall<TRequest, TResponse>`

> クライアント・ストリーミング・コールを非同期に呼び出します。
> クライアントストリーミングのシナリオでは、クライアントが複数のリクエストをストリーミング送信し、サーバーが単一のレスポンスで応答します。

### `AsyncDuplexStreamingCall<TRequest, TResponse> AsyncDuplexStreamingCall<TRequest, TResponse>`

> 非同期に二重ストリーミングコールを呼び出す。
> デュプレックス・ストリーミングのシナリオではクライアントがリクエストのストリームを送信し、サーバーがレスポンスのストリームで応答します。
> レスポンスのストリームは完全に独立しており、双方が同時にメッセージを送信することができます。
同時に送信することができます。

###### tags: `gRPC` `通信方式` `Grpc.Core.CallInvoker`
