我正在使用Python编写的gRPC客户端,该客户端应该从用c ++编写的服务器接收通知。我遇到的问题是,当我调用rpc流时,它立即关闭,导致我订阅和取消订阅通知流,而当我取消订阅时丢失了通知。有没有办法防止rpc在python中关闭?
rpc具有格式通知(stream notificationRequest)返回(流notificationReply)的格式
连续订阅和退订的代码如下所示
request = server_pb2.NotificationRequest()
requests = [request]
while True:
responses = stub.notification(iter(requests))
for response in responses:
print(response.node.id, int(response.id))
仅执行一次rpc时,服务器日志显示rpc在执行后立即关闭。
responses = stub.notification(iter(requests))
必须对请求进行哪些更改才能无限期保持rpc打开?