Утечка в шаблоне приложения Iphone SDK Utility

Я создаю проект только с шаблоном служебного приложения. У этого шаблона есть собственная утечка памяти, когда я нажимаю «информационную кнопку», чтобы перевернуть представление.

Кто-нибудь знает, как я могу исправить эту утечку ??? Я просто делаю новый проект из этого шаблона, я не добавляю новые объекты.


person Community    schedule 09.08.2009    source источник
comment
Какую версию SDK вы используете?   -  person Tim    schedule 09.08.2009
comment
Я использую SDK 3.0 с Xcode 3.2 на Snow Leopard   -  person    schedule 09.08.2009


Ответы (8)


Это может быть утечка или не утечка. Если бы вы добавили обратную трассировку выделения, это было бы полезно.

Скорее всего, это не утечка, а некоторая бухгалтерская информация, которая прячется dyld, которую утечки / инструменты теряют из виду.

Учитывая, что это 128 байт, и я предполагаю, что есть только один из них, я бы посоветовал вам сообщить об ошибке через http://bugreport.apple.com, а пока забудьте об этом, поскольку в том маловероятном случае, когда это действительно утечка, вы также вряд ли сможете исправить ее из своего приложения.

person bbum    schedule 10.08.2009


Утечка делает это:

XCode 3.2 -

Файл, новый проект, приложение на основе навигации
Дайте ему имя
Постройте его
Запустите с помощью инструментов повышения производительности -> Утечки

Когда появятся инструменты, нажмите «Утечки» (возможно, вам придется щелкнуть маленький значок внизу, который выглядит как четыре прямоугольника внутри поля).

Примерно через 7 секунд после запуска вы должны увидеть утечку: - Malloc 128 байтов, некоторый адрес, 128 байтов, CoreGraphics, open_handle_to_dylib_path

Я отследил это до этого кода в AppDelegate:

//APPLE CODE
- (void)applicationDidFinishLaunching:(UIApplication *)application {    

    // Override point for customization after app launch    

    [window addSubview:[navigationController view]];
    [window makeKeyAndVisible];
}

Я разбил NavigationController (выделил и освободил отдельно) и ОТМЕТИЛ действие addSubview: - утечки не было - и, очевидно, экран был пуст.

Утечка произошла только после попытки addSubview. Поскольку есть множество способов добавить подвид, я попробовал их. Каждый из них приводил к утечке или пустому экрану.

person inked    schedule 05.09.2009

Попробовал на реальном ipod touch. Об утечках не сообщалось. Наверное, просто симулятор ...

person mike majid    schedule 27.11.2009

Утечки также отметили open_handle_to_dylib_path в CoreGraphics для меня; здесь определенно что-то отмечено. Поскольку это всего лишь 256 байт, я отправил в Apple отчет об ошибке и назвал его готовым. Затем вы можете установить правило в конфигурации Leaks, чтобы игнорировать отчет.

Как заметил bbum, здесь может быть серьезное вуду. Я серьезно сомневаюсь, что Apple позволила бы дырявым фреймворкам проходить контроль качества - тем более, что их так легко воспроизвести.

person Jed Smith    schedule 05.09.2009

Это должно быть ошибка. Он появляется в собственном примере Apple, PageControl, который можно найти здесь: http://developer.apple.com/iphone/library/samplecode/PageControl/index.html#//apple_ref/doc/uid/DTS40007795

person John Middendorf    schedule 21.11.2009

В текущем шаблоне утилиты SDK утечки нет. Как у вас создалось впечатление, что в шаблоне есть утечка? Это просто выделение памяти, которая необходима для представлений.

Утечка - это память, на которую не существует указателей и которую больше нельзя освободить.

person Nikolai Ruhe    schedule 09.08.2009
comment
Привет, я создаю новый проект из шаблона служебного приложения и запускаю его с помощью инструментов, и это показывает мне две утечки. Я получаю: Утечка объекта: Malloc 128 байт Размер: 128 байт Ответственная библиотека: CoreGraphics Ответственный фрейм: open_handle_to_dylib_path - person ; 09.08.2009

У меня была такая же проблема, но я мог понять, почему это произошло. И я дал краткую информацию об этой проблеме в этом статья

Может быть вам полезно.

person Krishnan    schedule 19.05.2010