Сбой iOS без ошибок или трассировки стека

Трудно отследить сбой в приложении iPad. Сложность действительно проистекает из того факта, что при сбое приложения нет ошибок или трассировки стека. Это просто уходит, как Кейзер Созе: «И вот так, пуф. Он ушел».

Я воспроизвел сбой и на симуляторе, и на устройстве. Нет журналов устройств, ничего в консоли и т. Д.

Я знаю, что во время сбоя некоторые операции CoreGraphics выполняются в фоновом потоке. Обычно три или около того NSOperations запускают некоторые смешения изображений.

Смешивание состоит из вызовов CGContext * (DrawImage, SetBlendMode, SetAlpha и т. Д.). NSOperation обращается к делегату в основном потоке для обработки изображения и устанавливает для него значение UIImage , так что это не должно быть конфликтом основного потока пользовательского интерфейса, но я ничего не сбрасываю со счетов на данном этапе.

Есть ли какие-то уловки Xcode, которые мне не хватает, чтобы точно отследить, что происходит? Или, по крайней мере, лучше понять, в чем проблема?

РЕДАКТИРОВАТЬ Я запустил приложение в Инструментах, отслеживая использование памяти, и вижу, что оно довольно стабильно около 2 МБ. Так что не думайте, что это проблема с памятью. Но после размышлений этот стабильный 2MB кажется ненормально низким. Есть ли вероятность, что Instruments не собирает выделения CoreGraphics?

35
задан Alex Cio 18 May 2015 в 11:05
поделиться