2009-06-19 17 views

cevap

3

Mach callhost_info(host, flavor, host_info, host_info_count)'u kullanabilirsiniz. Eğer flavor=HOST_BASIC_INFO, tampon host_info puanla diyoruz Eğer bir yapı host_basic_info ile doldurulur için ne gibi görünüyor:

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 */ 
} 

bu yapının itibaren, hafıza boyutunu alabilirsiniz. gerektiğinde os sizin için arka plan uygulamaları öldürmek beri

NSLog(@"physical memory: %d", [NSProcessInfo processInfo].physicalMemory); 

Kullanılabilir bellek zor bir numaraya çivilemek birşey değil olacak,: Aşağıdaki fiziksel bellek alabilirsiniz

8

önbellek uygulamasına dosya önbelleklerini temizlemeyle birlikte daha fazla bellek verin. Kendi önbelleğinizi optimize etmek için bunu yaptığınızı varsayarak, önbellek boyutunuzu fiziksel belleğe göre yapılandırabilir ve ne kadar kullanmanız gerektiğini tahmin edebilirsiniz. o, öldürülmeden önce Örneğin, eski bir 128m iphone 3g üzerine, bütün uygulama yalnızca belki 10-15megs ram alacağı os seni öldürmeye karar vermeden önce yepyeni bir 1024meg iphone5 size ram yüzlerce megabayt izin nereye gittiğini . http://en.wikipedia.org/wiki/List_of_iOS_devices

+1

Ben bu olmalı sanırım, NSLog (@ "Fiziksel Bellek:% llu", [NSProcessInfo ProcessInfo] .physicalMemory); – Femina

İlgili konular