gpt4 book ai didi

c++ - gRPC 客户端流

转载 作者:数据小太阳 更新时间:2023-10-29 03:21:37 25 4
gpt4 key购买 nike

客户端流的官方 gRPC 文档指出:

The server sends back a single response, typically but not necessarily after it has received all the client’s requests...

我正在尝试做的是在流中间捕获服务器响应以停止发送更多数据。

在 Go 中,我可以使用 RecvMsg 启动一个新的 goroutine 监听来自服务器的消息,但我找不到在 C++ 中执行相同操作的方法。看起来像 ClientWriter不提供这种功能。

一个解决方案是拥有一个双向流,但想知道是否有任何其他方法可以在 C++ 中实现这一点。

最佳答案

一旦响应和状态由服务器发送并在客户端(即客户端 gRPC 堆栈)接收回来,后续对 Write() 的尝试将开始失败。第一次失败的 Write() 是给客户端的信号,它应该停止写入并完成 RPC。

所以这里的两个选项是:1.等待Write失败,然后调用finish接收Server的响应和状态。2. 如果客户端真的想在调用 Finish 之前从服务器读取响应,请切换到双向流。

关于c++ - gRPC 客户端流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52841895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com