Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемAntonKrokhmalyuk
1 Ошибки при работе с памятью на iOS Поиск причин падений в связи с Low Memory и EXC_BAD_ACCESS
2 Аудитория Разработчики Разработчики под iOS
3 Работа с памятью под iOS reference counted NSObject alloc/dealloc retain/release retainCount
4 Работа с памятью под iOS plane = [[Plane alloc] init]; plane2 = [plane retain]; plane3 = plane; [plane release]; [plane2 release]; [plane dealloc]; Plane plane plane2 plane3 120
5 Ошибки при работе с памятью Утечки типа 1: ссылки удалены, объект живет Утечки типа 2: ссылки есть, объект живет ( но зря ) Обращение к освобожденным объектам : ссылки живут, объект не живет
6 Утечки первого типа leakedPlane = [[Plane alloc] init]; … leakedPlaner = [[Plane alloc] init]; Plane leakedPlane Plane Leak
7 Утечки второго типа leakedPlane = [[Plane alloc] init]; [leakedPlane retain] [leakedPlane release] Plane leakedPlane
8 Обращение к освобожденному объекту leakedPlane1 = [[Plane alloc] init]; leakedPlane2 = leakedPlane1; [leakedPlane1 release]; leakedPlane1 = nil; [leakedPlane2 fly]; Plane leakedPlane1 leakedPlane2 Elephant Automobile BAD_ACCESS
9 Low memory Processes Name UUID Count resident pages Mobil 692 MobilePhone 489 KingsHeroOrigins (jettisoned) (active) iPhone/iPod 1st & 2nd generation: 128 MB RAM Only ~20 MB for application!!! iPhone 3GS, iPod 3rd generation & iPad: 256 MB RAM ~110 MB for application, but multitasking
10 EXC_BAD ACCESS Program received signal: EXC_BAD_ACCESS
11 Что с этим делать ? Утечки памяти первого типа ( объекты без ссылок ) Instruments, Leaks Утечки памяти второго типа ( вечные объекты ) Instruments, ObjAlloc Анализ связей Переопределение retain/release EXC_BAD_ACCESS NSZombieEnabled (stack) Instruments, ObjAlloc (new XCode) Анализ связей Переопределение retain/release/dealloc
12 DEMO
13 Анализ связей Кто владеет этим объектом ? Карта связей По каким событиям он должен освобождаться ? Какие объекты должны освобождаться по этому событию ?
14 Вопросы ???
15 Контактная информация Станислав Краснояров
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.