¿Cómo hacer para no seguir agregando imágenes en ram?

Estoy haciendo algo de load on scroll en mi UITableView para get datos del server.

 func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) { let lastElement = self._titles_en.count - 1 if indexPath.row == lastElement { page += 1 searchForString() } } 

cada input agrega una UITableViewCell con un UIImageView cargado usando UIImageView

 loadRemoteImage(placeImage, argURL: _images[indexPath.row], cr : 0) 

Ahora mi pregunta es, ¿cómo me aseguro de que el ram utilizado no siga aumentando?

Estaba mirando el ram en las herramientas de debugging, se incrementa en 10 mega bytes para cargas de aproximadamente 3 páginas, lo cual es demasiado, y está comenzando a superar los 200 mega bytes, ¿hay algún truco para evitar este aumento de memory RAM? Tengo miedo de que el usuario mantenga el desplazamiento muchas veces y el boom, locking de la aplicación.

Puede utilizar AsyncDisplayKit y beneficiarse automáticamente de la precarga inteligente y la administración de memory. En particular, si una celda de un ASTableNode incluye una image, pero es probable que esa celda no sea visible pronto , la image se eliminará de la memory.

ejemplo: ejemplo

Yo diría que optimiza tus imágenes, mucho. Según lo que dices, estás usando imágenes muy grandes. Recuerde que se están mostrando en un UITableViewCell, por lo que debería ser seguro tenerlos comprimidos.

Intente search y mostrar miniaturas en lugar de las imágenes reales de tamaño completo. Eso también mejoraría la experiencia del usuario, networkingucirá el retraso, ¡el uso de la memory!

Puede agregar un procesador a una request de espacio y networkingucir las imágenes. Esto mantendrá tus imágenes pequeñas. Prueba esto:

 let processor = ResizingImageProcessor(targetSize: CGSize(width: 100, height: 100)) imageView.kf.setImage(with: url, options: [.processor(processor)]) 

Estoy usando SDWebImage para el mismo propósito, y tiene methods muy simples para el mismo. Además, le brinda la opción de que a la fuerza quiera cargar la image o usar las imágenes almacenadas en caching, si existe.

También he tratado de search la memory para el mismo, en mi caso con SDWebImage , para las primeras 4-5 imágenes, el ram aumentó mucho, pero más tarde se mantuvo constante.