Разработка iPhone - Что можно сделать с этой ошибкой памяти: - PullRequest
1 голос
/ 02 августа 2010
Dual Search(8896,0xb014b000) malloc: *** error for object 0x5a1e0f0: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug

Спасибо!

Ответы [ 3 ]

0 голосов
/ 12 августа 2010

Вы можете попытаться установить точку останова на malloc_error_break, как предлагает SDK.Чтобы сделать это, просто введите «b malloc_error_break» после запроса (gdb) в консоли в любое время после запуска приложения.Xcode остановится в отладчике в тот момент, когда вы делаете недействительный выпуск памяти.

0 голосов
/ 12 августа 2010

Удаление ВСЕХ выпусков объекта означает, что выделенная вами память не будет освобождена, следовательно, это повлияет на управление памятью. Убедитесь, что каждое выделенное вами место в памяти имеет свой выпуск.

0 голосов
/ 02 августа 2010

Звучит как двойной релиз.Я настоятельно рекомендую вам сначала взглянуть на правила .Это важно знать и понимать.Они также помогут вам понять, когда и по каким причинам вызывать -release, -copy, -retain и т.д., но не задерживай дыхание.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...