在iOS中重建Thrift客户端

在iOS中重建Thrift客户端,ios,objective-c,cocoa,thrift,Ios,Objective C,Cocoa,Thrift,简而言之,我们的项目使用了一台Thrift服务器和具有多路复用功能的移动客户端 在开发iOS客户端时,我遇到了一个奇怪的问题 当我第一次创建客户机并进行调用时,一切正常,工作正常 由于可可储蓄客户没有封闭的方法,我希望ARC会处理好它 一段时间后,我为同一服务创建了另一个客户端,并执行了相同的操作,但这一次,当我进行服务调用时,客户端挂起,并且在一段时间后抛出一个“'TTransportException',原因是:'无法读取。远程端已关闭'” 在服务器中,操作成功完成并返回值 有人知道我做错了

简而言之,我们的项目使用了一台Thrift服务器和具有多路复用功能的移动客户端

在开发iOS客户端时,我遇到了一个奇怪的问题

当我第一次创建客户机并进行调用时,一切正常,工作正常

由于可可储蓄客户没有封闭的方法,我希望ARC会处理好它

一段时间后,我为同一服务创建了另一个客户端,并执行了相同的操作,但这一次,当我进行服务调用时,客户端挂起,并且在一段时间后抛出一个“'TTransportException',原因是:'无法读取。远程端已关闭'”

在服务器中,操作成功完成并返回值

有人知道我做错了什么吗


提前谢谢

阅读你的问题时,我记得我们在完全不同的环境中遇到了一个非常类似的问题。如果ARC负责您的客户端并关闭连接,特别是端口,这可能就是为什么再次使用相同端口重新创建客户端是问题的根源。关闭后不久打开同一端口可能需要很长时间(分钟),具体取决于超时

很抱歉,你的问题没有真正的答案,但也许我们需要寻找一个提示