问题描述
客户端向grpc服务中的双向流Hello方法发送消息。
服务器从客户端收到消息并回复HelloReply()。
这是我想做的:
如果服务器在2秒钟内未收到来自客户端的任何消息,请中止连接。
我尝试使用以下代码执行此操作,但不起作用...
需要帮助,谢谢。
class ServerServicer(service_pb2_grpc.HelloServicer):
def Hello(self,request_iterator,context: grpc.ServicerContext):
try:
# message_receive_time = time.time()
# def timeout():
# while True:
# if time.time() - message_receive_time > 2:
# context.abort(grpc.StatusCode.DEADLINE_EXCEEDED,'RPC Time Out!')
# timeout_task = threading.Thread(target=timeout)
# timeout_task.start()
for request in request_iterator:
message_receive_time = time.time()
yield service_pb2.HelloReply()
except Exception as error:
traceback.print_exc()
# timeout_task.close()
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)