不要被NSTimer的isValid方法迷惑
当你用NSTimer时,若在另一个线程中调用了invalid方法,那么这个定时器对象将很有可能被释放掉。此时再调用其isValid方法会即刻崩溃。
解决方法是,当你调用invalid方法将定时器无效化之后,马上将主线程中所持有的定时器对象引用置空。然后在主线程中通过判断其定时器对象引用是否为空来判定时器是否有效。
当你用NSTimer时,若在另一个线程中调用了invalid方法,那么这个定时器对象将很有可能被释放掉。此时再调用其isValid方法会即刻崩溃。
解决方法是,当你调用invalid方法将定时器无效化之后,马上将主线程中所持有的定时器对象引用置空。然后在主线程中通过判断其定时器对象引用是否为空来判定时器是否有效。