GRPC IOS客户端连接丢失-目标C

时间:2019-06-22 05:54:58

标签: ios objective-c react-native grpc grpc-java

对于IOS App,连接正常,但是在电话空闲一会后,连接将丢失,因此RPC调用将挂起,而没有任何响应。

我在JAVA中遇到了同样的问题,我在其中添加了一个DeadLine,并在Deadline超过时重建了频道,如下所示。

stub.withDeadlineAfter(timeout, TimeUnit.MILLISECONDS).execute(input, new StreamObserver<AgentGuardStringResponse>() { ... }

然后出错(超过最后期限)

mChannel.shutdown();

这很好。

对于Objective-c / ios

我为RPC调用设置了超时时间


  [call setTimeout:timeout];
  call.requestHeaders[@"sessionId"] = sessionId;
  [call start];

并尝试重建,

_serviceClient = [[AgentGuardService alloc] initWithHost:GRPCMetadata.shared.uri];

这似乎不起作用,因为应用程序在启动后会保持空闲一段时间,并最终开始流经请求。

任何指针/指南都将非常有帮助。

谢谢

0 个答案:

没有答案