La memoria sucia de ImageIO no se borra automáticamente con iOS

Estoy creando una aplicación que es un tipo de galería: muestra diferentes contenidos multimedia como un visor de pantalla completa. El instrumento de asignaciones muestra que el parámetro Live Bytes no crece más de 40 Mb al usar la aplicación. Mientras tanto, la aplicación se está matando al 100% después de deslizar las páginas 20-30 veces. Revisé el parámetro de la memoria sucia y descubrí que era 10 veces más grande que el tamaño de los bytes en vivo. Y la mayor parte de esa memoria sucia consumió Image IO:

Captura de pantalla http://i40.tinypic.com/25ge51i.jpg

EDITAR, otra captura de pantalla:

Captura de pantalla http://i40.tinypic.com/9t1mh5.png

Los picos de asignación anteriores están cambiando el contenido de video / imagen. El problema es que la memoria sucia crece casi linealmente y necesito liberarla de alguna manera.

Ahora sobre el diseño de aplicaciones. La pantalla de aplicación tiene una vista de desplazamiento horizontal. La vista de desplazamiento contiene videos u objetos de collage que contienen múltiples imágenes. Para ahorrar memoria, solo se crean tres páginas a la vez: la página actual y las páginas a la izquierda / derecha. Por lo tanto, las páginas siempre se crean y eliminan sobre la marcha al deslizar la vista de desplazamiento.

Todas las imágenes que cargue usando[UIImage imageWithContentOfFile: path] método. El objeto de collage almacena instancias de UIImage dentro de imagesArray. En el método dealloc, el atributo imagesArray se borra.

Entonces, preguntas:

¿Es un tipo de error del sistema en[UIImage imageWithContentOfFile?]¿Es Image IO cache?¿Puedo borrarlo?

Respuestas a la pregunta(2)

Su respuesta a la pregunta