【发布时间】:2012-02-12 19:50:36
【问题描述】:
我发现在调用[self performSelector:@selector(method1:) withObject:self.tableView afterDelay:3]; 之后self.tableView 的retainCount 发生了变化?为什么?
非常感谢!
【问题讨论】:
标签: ios release retain retaincount performselector
我发现在调用[self performSelector:@selector(method1:) withObject:self.tableView afterDelay:3]; 之后self.tableView 的retainCount 发生了变化?为什么?
非常感谢!
【问题讨论】:
标签: ios release retain retaincount performselector
我相信您的表格视图的保留可能会增加,因为调用performSelector: withObject: afterDelay: 会保留参数,以便在最终执行方法时它不会消失。文档here。
【讨论】:
performSelector: withObject: afterDelay:时,将保留参数。当performSelector: withObject: afterDelay:完成时,将释放参数,所以,最终,参数的保留计数没有变化!非常感谢!
您不必担心 - tableView 将在选择器等待执行时保留,然后在执行后再次自动释放。这不会导致泄漏或崩溃。
【讨论】:
performSelector:withObject:afterDelay:inModes:,模式是什么?如何使用?能不能给我解释一下!非常感谢!