【发布时间】:2012-01-12 19:41:53
【问题描述】:
首先,我应该说我使用的是 ARC,因此不能选择保留。该对象的类是 NSViewController 类型,并且有两个 NSTimer 以及几个文本字段和按钮。奇怪的是,当这两个计时器失效时,看起来对象正在被释放。这是一个问题,因为有时我只想暂停或重新启动它们,这意味着我必须使它们无效,但是一旦我这样做,引用就会丢失,并且对象的任何消息都会抛出 EXC BAD ACCESS。
我对内存管理或 ARC 不是很熟悉,但为什么引用丢失仅取决于计时器?我的意思是,仅仅因为它们无效并不意味着我不再需要该对象。
我尝试将计时器声明为实例变量和属性,但没有任何改变。
我真正需要的是不保留引用,即使两个计时器都无效。我做错了什么?
【问题讨论】:
标签: cocoa nstimer automatic-ref-counting retain