0
我的第一篇文章是在here,以查找我的應用崩潰的原因。經過近3個小時的檢測,現在我可以找出泄漏的位置。如果我正在做CGImageRelease(sourceImageRef),目標C
首先,我正在做的是使用AFNetworking下載圖片後,我將設置uiimageview的大小與下載圖片的大小有關。
[self.headerView setImageWithURLRequest:[NSMutableURLRequest requestWithURL:[NSURL URLWithString:fundraiserInfo.imageUrl]]
placeholderImage:nil
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
// Use following to set the size of image according to retina or non retina
CGImageRef sourceImageRef = [image CGImage];
UIImage *newImage = [UIImage imageWithCGImage:sourceImageRef scale:[image scale] orientation:[image imageOrientation]];
CGImageRelease(sourceImageRef); // <------ this is I am getting crash
weakObj.image = newImage;
}
failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {
;
}
];
我越來越像下面
Incorrect decrement of the reference count of an object that is not owned at this point by the caller
我怎樣才能檢測到泄漏警告:
把該行並幾次嘗試後運行應用程序,該應用程序崩潰。通過2小時後檢測,我可以重現錯誤。如果我刪除該行,並按照我所做的來重現錯誤,該應用程序運行正常並且完全不會崩潰。
任何想爲什麼這條線是什麼原因崩潰我的應用程序
你爲什麼CGImageRelease(sourceImageRef);釋放這個,除非你沒有創建或保留它? – 2013-03-02 06:50:28
@Bhargavi:我用'[image CGImage]'創建了它,不是嗎?這就是爲什麼我在'newImage'創建後釋放它。我對此可能是錯誤的。 – tranvutuan 2013-03-02 07:02:15