在Swift中处理来自api调用的未接收响应有什么好方法?

时间:2016-07-24 14:03:57

标签: swift api-design

我即将发布多个应用,我发布了一个我知道要解决的问题。当我进行API调用并且从未收到回复时,我的应用程序将无法运行。他们非常依赖互联网访问功能。在发送另一个电话之前,如何设置某种形式的延迟?我如何确定需要等待多长时间,因为许多API调用在正常响应时间的时间线上有所不同?

我绝对对最佳实践最感兴趣,但是对于任何好的方法都有点困惑,因为当你没有收到回复时,没有触发器。我想我可以设置一个时间戳并检查if和现在使用NSTimer的时间戳之间的区别......但这是否是处理这个问题的好方法?我目前可以想到的大多数方法都会感到笨重和错误。

1 个答案:

答案 0 :(得分:1)

看看Grand Central Dispatch和DispatchSemaphore(快速3)。您可以使用信号量等待操作以指定的超时完成。如果操作没有正常完成并且超时,它将为您提供一个特定的结果,然后您可以使用它在代码中处理它。