将myViewController推入导航堆栈之后,我为myViewController上的几个字段填充一些数据发出简单的网络请求。我不希望这个请求阻止主线程,所以我使用performSelectorInBackground
。当请求返回时,我使用performSelectorOnMainThread
来更新UI。放弃iOS应用程序中的网络请求
此方法正常工作,但放弃请求。假设用户按下视图控制器,网络请求开始,然后用户立即弹出视图控制器并在应用程序中执行其他操作。在这种情况下,网络请求会回到不存在的对象。 我该如何处理这种情况?
我已经考虑过一个更强大的网络层,其中每个请求都有一个委托处理响应。使用这种体系结构时,我可以在视图控制器弹出时清空委托,从而避免请求返回任何问题。我不确定这是否是最好的方法。