如何使用ARC释放VM:ImageIO_GIF_Data?

时间:2013-09-26 03:10:48

标签: ios objective-c xcode automatic-ref-counting animated-gif

我在viewB的drawRect方法中使用OLImage来加载本地gif图像。我使用普通ViewA来推送ViewB,并反复弹出ViewB。大约20次后,我的应用程序在收到几个memory warnings.后崩溃了 我使用仪器来监控内存使用情况,你可以看到下面的结果。 Instrument statics

加载gif的代码如下:

@property (weak, nonatomic) IBOutlet OLImageView *gifImageView;


    if (!self.gifImageView.image) {
        self.gifImageView.image = [OLImage imageNamed:@"好.gif"];
        [self.gifImageView setUserInteractionEnabled:YES];
        [self.gifImageView addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)]];
    }

我正在使用ARC,我认为当ViewB弹出时,iOS应该发布gif数据。或者至少在我的应用程序收到内存警告时。 难道我做错了什么? 或者这可以是如何释放VM memory in ARC的更一般的问题?

1 个答案:

答案 0 :(得分:0)

事实证明这可能是OLImage本身的一个问题。我对此问题提出了拉取请求。如果您有兴趣,请查看commit