Cuando la aplicación ingresa en estado de funcionamiento en segundo plano, la cantidad de usos sucios de memoria es buena. En apple video se menciona que la memoria sucia debe reducirse tanto como podamos.iOS4 - cambio rápido de contexto
Pero en mi aplicación, estoy usando el controlador de navegación para abrir y cerrar vistas. Después de pasar de aproximadamente 20 páginas diferentes, los usos de memoria sucia alcanzan los 30 MB más o menos.
También en "dismissModalViewControllerAnimated" y "popViewControllerAnimated", no se llama dealloc.
tengo dos dudas:
- Con cuánta memoria sucia que es aceptable para ir a vivir?
- ¿Cuál es el controlador de navegación alternativo que admite el botón Atrás?
Gracias de antemano.
1. No 30 MB. Los dispositivos iOS anteriores solo tienen 128 MB de RAM, por lo que solo tu aplicación podría llenar eso por un 23% ... 2. Si realmente estás perdiendo 30 MB, probablemente no estás liberando algo, en algún lugar, no es 'UINavigationController' s culpa. –
Hola Douwe, Gracias por responder. Por qué dudo sobre UINavigationController porque, sigo presionando los controladores de vista en él.Y cuando saco los controladores de vista del controlador de navegación, no se llama al método dealloc donde estoy liberando las variables de instancia definidas. Y la memoria no se borra utilizada por todas estas variables de instancia. ¿Estoy haciendo algo mal? ¿Debo borrar las variables de instancia en otro lugar y no en dealloc? – Sunil
¿Tiene alguna otra referencia a sus controladores de vista en otra parte de su aplicación? Si los está mostrando, pero todavía tiene una referencia en otro lugar para el controlador, no recibirá GCed – blueberryfields