¿Es posible controlar la cantidad de memoria que consume su aplicación?¿Supervisa el uso de memoria en una aplicación de iphone?
Respuesta
Puede usar los instrumentos. Se proporciona con iOS SDK.
es más preciso con un dispositivo de entrenamiento ...
lanzarlo, elegir un tipo de monitoreo (Asignación, fugas, Monitor de Actividad), elija proceso y el objetivo de monitorear y luego haga clic en el botón de grabación.
Al hacer clic en este botón, la aplicación se abre sola.
Cuando haya terminado, haga clic en el botón de detención para detener el monitoreo.
Puede encontrar más información acerca de este programa aquí: About Instruments
Sí. En Xcode, abra su proyecto y elija Ejecutar>Ejecutar con la herramienta de rendimiento>Asignaciones. Esto iniciará una aplicación llamada Instruments, que se puede usar para analizar su aplicación. En ese caso específico, registrará todas las asignaciones de objetos, lo que le brinda una buena visión general de la huella de su memoria. Puede usar esto con ambos, el simulador de iOS y un dispositivo real. Debería preferir analizar la aplicación mientras se ejecuta en un dispositivo iOS para obtener resultados óptimos.
Los instrumentos pueden hacer mucho más para ayudarlo a optimizar sus aplicaciones, por lo tanto, debe prestarle más atención al Instruments User Guide.
Esto es ahora Producto -> Analizar -> Asignaciones. Deja de mover cosas, Apple, es desagradable. –
Hacer ese producto -> Perfilado (clic) -> Asignaciones –
Si tiene una cuenta de desarrollador de Apple, consulte la actual WWDC sobre instrumentos y optimice la memoria en ios. Realmente vale la pena ver si puedes entender rápidamente cómo funcionan los instrumentos.
En realidad, es probable que sea más importante saber cuánta memoria es libre, en lugar de cuánto usa la aplicación. Aquí hay algo de código para hacer esto:
#import <mach/mach.h>
#import <mach/mach_host.h>
+(natural_t) get_free_memory {
mach_port_t host_port;
mach_msg_type_number_t host_size;
vm_size_t pagesize;
host_port = mach_host_self();
host_size = sizeof(vm_statistics_data_t)/sizeof(integer_t);
host_page_size(host_port, &pagesize);
vm_statistics_data_t vm_stat;
if (host_statistics(host_port, HOST_VM_INFO, (host_info_t)&vm_stat, &host_size) != KERN_SUCCESS) {
NSLog(@"Failed to fetch vm statistics");
return 0;
}
/* Stats in bytes */
natural_t mem_free = vm_stat.free_count * pagesize;
return mem_free;
}
Gracias, esto fue muy útil. Lo colocamos en un ciclo de devolución de llamada para comparar huellas de memoria de dos enfoques diferentes. Sentimos que los resultados de esto eran más consistentes y tenían más sentido que los instrumentos. – Kibitz503
¿Puedo preguntar por qué sería más útil saber cuánta memoria es gratuita en comparación con la cantidad que está siendo utilizada por la aplicación actual? Cuánto es gratis solo afecta la cantidad de spike de retraso en el futuro cercano en caso de que se realice la asignación, mientras que el uso total informaría si ** la finalización de la aplicación ** es inminente. No puedo imaginar una sola situación en la que lo primero sea más útil saber que lo segundo. Dirijo a los lectores [aquí] (http://stackoverflow.com/a/7990532/340947) para conocer el uso actual de la aplicación. –
Cuando alguien pregunta por A, no le digas que A no es tan importante como B. –
se puede comprobar con esta url: https://github.com/andrealufino/ALSystemUtilities/blob/develop/ALSystemUtilities/ALSystemUtilities/ALDisk/ALDisk.m esto está funcionando bien.
Esto está bien. Pero en lugar de publicar simplemente Link, intente publicar algunas explicaciones. –
- 1. supervisa el uso de la memoria de un programa en Linux
- 2. Cómo reducir el uso de memoria de una aplicación WPF
- 3. Limitar el uso de memoria de una aplicación .net
- 4. Cómo determinar el uso de memoria en mi aplicación .NET
- 5. Comprender el consumo de memoria en iPhone
- 6. ¿Cuánta memoria puede usar una aplicación de iPhone?
- 7. Limitar el uso de memoria y CPU de aplicación Java
- 8. Cómo medir la memoria gráfica Uso de una aplicación WebGL
- 9. Aplicación de iPhone y iPad Uso de memoria real y virtual
- 10. Uso de botones de radio en la aplicación de iPhone
- 11. Memoria disponible para la aplicación iPhone OS
- 12. Supervisar el uso de la memoria del proceso secundario
- 13. Limite el uso de memoria de JTextPane
- 14. Optimizar el uso de memoria en numpy
- 15. limitar el uso de memoria de Node.js
- 16. ¿Una fuga de memoria de la aplicación causa una fuga de memoria en el sistema operativo?
- 17. ¿Hay alguna manera de recuperar el uso de la memoria actual de una aplicación C#?
- 18. ¿Cómo el nombre de una variable tiene algún impacto en el uso de la memoria de una aplicación?
- 19. Uso de anuncios en la aplicación para iPhone PhoneGap
- 20. Uso de la memoria de la aplicación Java
- 21. Supervisa los procesos de ruby con Monit
- 22. cómo reducir el uso de memoria solr?
- 23. Cómo registrar el uso de la memoria de una aplicación Django por solicitud
- 24. ¿Cómo uso un .gif animado en mi aplicación de iPhone?
- 25. ¿Por qué el uso de memoria de una aplicación .NET parece disminuir cuando se minimiza?
- 26. Arquitectura de una aplicación de vistas múltiples en el iPhone
- 27. ¿Cómo medir el uso de memoria de una aplicación Rack o Sinatra?
- 28. ¿Cómo evitar quedarse sin memoria en la aplicación de uso de memoria alta? C/C++
- 29. Incrustar Python en una aplicación de iPhone
- 30. ¿Puedo iniciar una aplicación desde otra aplicación en el iPhone
Todas las respuestas apuntan a herramientas que puede utilizar en XCode cuando un dispositivo está atado. ** Me encantaría saber si una aplicación puede determinar la cantidad de memoria que está usando en la actualidad, cuando se está ejecutando en la naturaleza (en el teléfono de un consumidor). ** Si alguien sabe esto, increíble. – Fattie
@Joe - Ben muestra una forma de hacer esto usando las funciones de Mach aquí: http://stackoverflow.com/questions/2798638/available-memory-for-iphone-os-app/2798771#2798771, que es idéntico a lo que Andrew tiene en su respuesta. –
posible duplicado de [Recuperar mediante programación el uso de memoria en iPhone] (http://stackoverflow.com/questions/787160/programmatically-retrieve-memory-usage-on-iphone) – CRABOLO