Хорошо, у меня есть мир трудности, отслеживающий эту утечку памяти. При запуске этого сценария я не вижу утечки памяти, но мой объектalloc поднимается. Инструменты указывают на CGBitmapContextCreateImage> create_bitmap_data_provider> malloc, это занимает 60% моего объекта allococ.iPhone - UIImage Leak, ObjectAlloc Building
Этот код вызывается несколько раз с помощью NSTimer.
Как очистить этот reUIImage после его возвращения?
... или Как я могу сделать так, чтобы UIImage imageWithCGImage не создавал мой ObjectAlloc?
//I shorten the code because no one responded to another post
//Think my ObjectAlloc is building up on that retUIImage that I am returning
//**How do I clear that reUIImage after the return?**
-(UIImage) functionname {
//blah blah blah code
//blah blah more code
UIImage *retUIImage = [UIImage imageWithCGImage:cgImage];
CGImageRelease(cgImage);
return retUIImage;
}
Я видел, как NSAutoreleasePool выпускается следующим образом ... [pool drain], какой путь правильный? [пул утечки] или [пул релиз]? – bbullis21
Из документов: В среде с подсчетом ссылок этот метод ведет себя так же, как и выпуск. Поскольку пул авторесурсов не может быть сохранен (см. Сохранение), это приводит к тому, что приемник будет освобожден. Когда пул авторесурсов освобождается, он отправляет сообщение о выпуске всем своим автореализованным объектам. Если объект добавляется несколько раз в тот же пул, когда пул освобождается, он получает сообщение о выпуске для каждого момента его добавления. Телефон не имеет сбора мусора – coneybeare
Непонятно из комментария, но это описание из метода стока – coneybeare