Mi piacerebbe sapere come trovare la memoria disponibile a livello di codice in iPhone da Objective-C?Come trovare la memoria disponibile in iPhone a livello di programmazione?
risposta
È possibile utilizzare Mach callhost_info(host, flavor, host_info, host_info_count)
. Se lo si chiama con flavor=HOST_BASIC_INFO
, il buffer host_info
punti viene riempito con una struttura host_basic_info
, quello che sembra che:
struct host_basic_info {
integer_t max_cpus; /* max number of CPUs possible */
integer_t avail_cpus; /* number of CPUs now available */
natural_t memory_size; /* size of memory in bytes, capped at 2 GB */
cpu_type_t cpu_type; /* cpu type */
cpu_subtype_t cpu_subtype; /* cpu subtype */
cpu_threadtype_t cpu_threadtype; /* cpu threadtype */
integer_t physical_cpu; /* number of physical CPUs now available */
integer_t physical_cpu_max; /* max number of physical CPUs possible */
integer_t logical_cpu; /* number of logical cpu now available */
integer_t logical_cpu_max; /* max number of physical CPUs possible */
uint64_t max_mem; /* actual size of physical memory */
}
Da questa struttura, è possibile ottenere la dimensione della memoria.
È possibile ottenere la memoria fisica con il seguente:
NSLog(@"physical memory: %d", [NSProcessInfo processInfo].physicalMemory);
La memoria disponibile sta per essere, non qualcosa che si può inchiodare a un numero difficile, dal momento che il sistema operativo sarà uccidere applicazioni in background per voi come necessario per dare all'app in primo piano più memoria, oltre a cancellare le cache dei file ecc. Supponendo che tu stia facendo questo per ottimizzare il tuo caching, potresti costruire la dimensione della cache in base alla memoria fisica e indovinare quanto dovresti usare. Ad esempio, su un vecchio iphone 3g da 128 m, l'intera app otterrebbe forse solo 10-15 meg di ram prima di essere uccisa, dove un nuovissimo iphone5 a 1024 meg consentirà centinaia di megabyte di ram prima che il sistema operativo decida di ucciderti .
See memoria in dispositivi a http://en.wikipedia.org/wiki/List_of_iOS_devices
Suppongo che dovrebbe essere questo, NSLog (@ "Memoria fisica:% llu", [NSProcessInfo processInfo] .physicalMemory); – Femina
Controllare questo URL: https://github.com/andrealufino/ALSystemUtilities/blob/develop/ALSystemUtilities/ALSystemUtilities/ALDisk/ALDisk.m può essere questo è utile per voi.
Grazie per aver condiviso la mia biblioteca :) –
- 1. iPhone - Rimuovi la barra di stato a livello di programmazione
- 2. Swift: come impostare il volume iphone a livello di programmazione
- 3. iPhone SDK - Aggiungi un UINavigationController a livello di programmazione
- 4. iPhone: mixa due file audio a livello di programmazione?
- 5. È possibile disattivare l'audio di iPhone a livello di programmazione?
- 6. Invia SMS da iPhone a livello di programmazione
- 7. Verificare se la scheda SD è disponibile o non a livello di programmazione
- 8. Come sincronizzare la musica dalla libreria musicale del pc a iphone a livello di programmazione?
- 9. Game Center Trovare una corrispondenza a livello di programmazione
- 10. Come bloccare a livello di programmazione la schermata in Android?
- 11. Recupero nome operatore da iPhone a livello di programmazione
- 12. iOS 3D a livello di programmazione
- 13. iPhone: come possiamo cambiare la luminosità dello schermo a livello di programmazione?
- 14. IPhone/IPad: come ottenere la larghezza dello schermo a livello di programmazione?
- 15. , verificare a livello di programmazione
- 16. Come aprire richiamare MKAnnotationView al livello di programmazione? (iPhone, MapKit)
- 17. Come disabilitare SparkUI a livello di programmazione?
- 18. come inviare sms a livello di programmazione?
- 19. Come trovare l'area di testo (altezza/larghezza) di TextView a livello di programmazione in Android
- 20. Ionico come tornare a livello di programmazione
- 21. Come configurare ELMAH a livello di programmazione?
- 22. Come impostare windowDrawsSystemBarBackgrounds a livello di programmazione?
- 23. Rimuovere il layout a livello di programmazione
- 24. Come utilizzare AcroTextExtractor.exe a livello di programmazione?
- 25. Come attivare "Installato" a livello di programmazione?
- 26. Come aprire selezionare a livello di programmazione
- 27. Come attivare FlashLight in Lollipop a livello di programmazione Android
- 28. iphone - Impostazioni del proxy (a livello di sistema) programmate al livello di programmazione?
- 29. Ingrandire un MKMapView a livello di programmazione
- 30. Come posso cambiare le viste a livello di programmazione in un controller di visualizzazione? (Xcode, iPhone)
Disponibile per l'app, memoria fisica totale o memoria di archiviazione del filesystem? – Jano