【发布时间】:2011-05-25 10:02:58
【问题描述】:
我在这里有一个相当基本的问题。我发现我经常在视图控制器的 viewDidLoad: 方法中实例化模型对象,例如在用于填充视图控制器中表格元素的 Web 服务对象的情况下:
- (void)viewDidLoad {
[super viewDidLoad];
itemService = [[BlogItemService alloc] init];
}
我应该在哪里发布 itemService?在 viewDidUnload 还是 dealloc 中?
此外,在 viewDidLoad 中分配这样的对象是否常见?难道没有更合适的init类型方法吗?
更新:我特别担心。假设我在 dealloc 中取消分配 itemService。如果视图被卸载然后重新加载,但视图控制器没有被释放,我会不会有内存泄漏,因为 itemService 的前一个实例在实例化新实例时是孤立的?
【问题讨论】:
标签: iphone ios memory-management uiviewcontroller