Как использовать MallocStackLogging на устройство?

У меня проблема с памятью в приложении iPhone, которое я бы хотел отладить с помощью MallocStackLogging . Ошибка связана с гироскопом, поэтому мне нужно отлаживать устройство, а не симулятор.

Я установил переменную среды MallocStackLogging , и iPhone правильно записывает журналы стека блокировки:

MyApp(1856) malloc: recording malloc stacks to disk using standard recorder
MyApp(1856) malloc: stack logs being written into /private/var/mobile/Applications/1FD1F8D2-5D30-4AA7-B426-C52FE20266DE/tmp/stack-logs.1856.MyApp.index
MyApp(1856) malloc: Please issue: cp /private/var/mobile/Applications/1FD1F8D2-5D30-4AA7- B426-C52FE20266DE/tmp/stack-logs.1856.MyApp.e8z3IL.link /tmp/

Теперь как можно Я работаю с ними?

Я могу перенести их на Mac с помощью Xcode Organizer. Но что мне делать с этими двумя файлами?

  • stack-logs.1856.MyApp.index
  • stack-logs.1856.MyApp.e8z3IL.link

Я пробовал переместить файлы в / tmp на Mac и позвонил:

$ malloc_history 1856 -all_events
malloc_history cannot examine process 1856 because the process does not exist.

Очевидно, команда malloc_history ищет запущенные процессы на локальном компьютере. Мне не хватает возможности указать файл журнала вручную.

Есть ли способ заставить это работать либо напрямую с Xcode на (не взломанном) устройстве, либо после передачи журналов на Mac?

32
задан Ortwin Gentz 2 March 2011 в 12:38
поделиться