GRPC主题:如何控制服务器流?

时间:2020-09-10 03:31:30

标签: grpc

我有一个场景,描述如下: gRPC版本为:1.19.0 我正在使用API​​ IServerStreamWriter将数据从服务器流式传输到客户端。 在客户端,我尝试使用IAsyncStreamReader读取流数据:

while(等待调用.ResponseStream.MoveNext()。ConfigureAwait(false)) { ...... }

由于没有从客户端流式传输的数据,我发现我没有以我期望的速度退出此循环(客户端)。

第一个问题: 我需要从服务器端设置流的完整性吗?

第二个问题: 我是否可以(在客户端)检查流(ResponseStream)是否已完成? 否则,此Call call.ResponseStream.MoveNext()会导致某些异常,因为此调用会尝试获取不可用的数据。

第三个问题: 是否有可能定义一些等待客户端数据的超时时间?

到目前为止,我已经检查了服务器端IServerStreamWriter和客户端IAsyncStreamReader上API所提供的内容,这对我实现目标没有帮助。 我是否需要获得新的升级的gRPC版本,这可以对我有进一步的帮助?

非常感谢您的帮助。

最好的问候 阿纳斯

0 个答案:

没有答案