desde la Guía de programación del controlador de vista Apple/Gestión eficaz de la memoria;didReceiveMemoryWarning y viewDidUnload
didReceiveMemoryWarning
Utilice este método para anular la planificación de todas las estructuras de datos personalizados no críticos asociados con el controlador de vista. Aunque no usaría este método para liberar referencias para ver objetos, puede usarlo para liberar cualquier estructura de datos relacionada con vistas que no haya publicado en su método viewDidUnload. (La vista objetos mismos siempre deben ser liberados en el método viewDidUnload.)
viewDidUnload
Usted puede utilizar el método viewDidUnload a liberar cualquier información que es específica de la vista y que se puede recrear con bastante facilidad si el ver se carga en la memoria de nuevo. Sin embargo, si la recreación de los datos puede consumir demasiado tiempo, no es necesario que libere los objetos de datos correspondientes aquí. En su lugar, debería considerar liberar esos objetos en su método didReceiveMemoryWarning.
Para didReceiveMemoryWarning, que se recomiendan para cancelar la asignación de estructuras de datos no críticos. Entonces, ¿qué es crítico y qué no es crítico?
Además, dice lanzar lo que no lanzamos en viewDidUnload. Pero cuando hay una advertencia de memoria que se llama aReceiveMemoryWarning y se puede descargar la vista, se invoca viewDidUnload. Entonces, ¿está hablando de mover esos códigos al método del evento anterior (didReceiveMemoryWarning) o me falta algo sobre el orden de los eventos?
Para viewDidUnload, se nos recomienda cuidar fácilmente recreando los datos al volver a cargar una vista. Entonces, si una vista está en uso y no se pudo descargar, ¿por qué vamos a lanzar datos que consumen mucho tiempo en didReceiveMemoryWarning? Después de esos datos publicados, cuando el usuario intenta hacer algo dentro de la vista actual, también llevará mucho tiempo cargarlos.
como usted señala que lo llaman homólogo, pero no se llama sin una advertencia de memoria. – lockedscope
por lo que quiere decir "se sabe que no se ve (no es terriblemente normal)" las vistas modales de esto, ¿no? ¿Hay algún otro caso? – lockedscope
La vista en un modo de pantalla completa podría ser un caso, sí. No estoy seguro si hay otros casos. – imaginaryboy