1

我有一个视图控制器,它触发一个 Web 服务获取一些数据并将结果存储在核心数据中,然后在不同的线程中解析..

我有很多数据,所以解析需要一些时间,并且不确定在导航中弹出 viewController 是否会停止我的解析方法的执行,

如果它在两者之间停止执行,那么我的核心数据数据库将被损坏,所以它会在释放我的 viewController 对象之前停止执行或执行选择器

MyViewController *vc = [[MyViewController alloc] init];
[self.navigationController pushViewController:vc animated:YES];
[vc performSelectorInBackground:aSelector withObject:arg];
4

1 回答 1

3

您可能会考虑将 Web 服务器交互移动到不同的对象。该对象可以处理请求/响应并将结果存储到 Core Data。这个对象也可能是一个全局对象,它有一个队列来处理请求。如果没有,那么您将需要在视图控制器释放期间处理取消请求。

你的视图控制器可以监听 Co​​re Data 的变化并采取适当的行动。

于 2012-04-25T13:47:27.673 回答