VM:分配导致应用崩溃

时间:2015-03-17 18:32:01

标签: ios swift allocation

我的应用程序使用NSTimer变量,该变量使用NSNotificationCenter.postNotificationName每秒向UIViewController类发布通知。

问题是应用程序偶尔崩溃,没有堆栈跟踪,这意味着它是一个内存问题。

来自Instruments,它的发生是因为VM:Allocation增加了1.78MB。分配只是随机发生的。

我启动计时器后就是这样: enter image description here

这是我启动计时器几分钟的时间 enter image description here 所以,

  1. 我没有看到堆栈跟踪或任何东西。我该如何进行调试 这个?

  2. 该应用程序仅使用7.3MB并处于前台,为什么会这样 杀?? :(

  3. 我只是让计时器运行,该方法只更新现有的 什么触发这个VM:分配???
  4. 我使用Swift,如果重要的话

    谢谢,

1 个答案:

答案 0 :(得分:0)

问题出在for循环中。每次调用for函数时,我都有一个很大的NSTimer循环来执行大量的赋值,调用API等等,所以当迭代次数有点太高时,VM分配才会启动英寸

我认为答案是在autoreleasepool {}循环中使用for。从那以后,没有发生过崩溃。 观看这些WWDC2013视频有助于提出一些想法,但不是直接的。

Improving Your App with Instruments

Intermediate Swift