"Сторожевой таймер истек." может означать что угодно . Формулировка сообщения предполагает, что «локальная» GDB (работающая на вашем Mac) GDB истекла в ожидании данных от «удаленной» GDB (работающей на телефоне). В качестве альтернативы, «Сторожевой таймер истек» может быть с выхода консоли телефона незадолго до его перезагрузки.
Что отображается, если вы отключаете устройство во время работы приложения? Что если вы выключите его? Что делать, если вы выполните полный сброс (Sleep + Home на 10 секунд)?
Если это приводит к перезагрузке устройства, происходит что-то серьезно неправильное. Ваше приложение не должно быть в состоянии отключить телефон, но иногда что-то проскальзывает (IIRC, UIImagePickerController на некоторых версиях 2.x имели проблему, когда либо ваше приложение было убито, либо телефон перезагрузился бы в зависимости от того, кто пнул первым). «Большой набор растровых изображений» звучит так, как будто это может привести к тому, что CoreAnimation (или IOSurface или что-то еще) исчерпает видеопамять.
Я бы не решался рисовать в фоновом потоке, если вы не очень осторожны с безопасностью потоков (в первом приближении CoreAnimation есть, а UIKit нет, за исключением нескольких функций, которые были сделаны «потоко-безопасными» в 4.0 ).