在viewWillDisappear中释放对象安全吗?假设这些对象将再次在viewWillAppear上重新创建。
所以,这就是我的写作方式。这样做有什么害处吗?
- (void)dealloc {
[self releaseObjects];
[super dealloc];
}
- (void)releaseObjects {
self.request = nil;
self.loadingOverlay = nil;
self.textView = nil;
self.label = nil;
self.endPoint = nil;
}
- (void)viewWillDisappear:(BOOL)iAnimated {
[super viewWillDisappear:iAnimated];
[self releaseObjects];
}发布于 2012-05-02 02:03:34
通常,在创建变量的“伴生”函数中释放变量。因此,如果您在viewWillAppear中创建它们,那么您将在viewWillDisappear中释放它们。viewWillLoad、viewWillUnload中的版本等。
所以,是的,这是正常的。
发布于 2012-05-02 02:05:33
它不应该破坏任何东西,但它可能是浪费的。假设vc在选项卡上,并且用户重复地在选项卡之间切换。你会做很多额外的免费/分配的工作。
除非有什么异常的资源消耗,否则我把它留给操作系统,让我知道我应该用钩子来释放内存: didReceiveMemoryWarning、dealloc等。
https://stackoverflow.com/questions/10402010
复制相似问题