我的应用程序使用NSTimer变量,该变量使用NSNotificationCenter.postNotificationName每秒向UIViewController类发布通知。
问题是应用程序偶尔崩溃,没有堆栈跟踪,这意味着它是一个内存问题。
来自Instruments,它的发生是因为VM:Allocation增加了1.78MB。分配只是随机发生的。
我启动计时器后就是这样:
这是我启动计时器几分钟的时间 所以,
我没有看到堆栈跟踪或任何东西。我该如何进行调试 这个?
该应用程序仅使用7.3MB并处于前台,为什么会这样 杀?? :(
我使用Swift,如果重要的话
谢谢,
答案 0 :(得分:0)
问题出在for
循环中。每次调用for
函数时,我都有一个很大的NSTimer
循环来执行大量的赋值,调用API等等,所以当迭代次数有点太高时,VM分配才会启动英寸
我认为答案是在autoreleasepool {}
循环中使用for
。从那以后,没有发生过崩溃。
观看这些WWDC2013视频有助于提出一些想法,但不是直接的。