SORU
16 ŞUBAT 2011, ÇARŞAMBA


Bir iOS cihaz üzerinde RAM kullanılabilir miktar tespiti

Büyük olasılıkla "Sistem Bilgisi, batarya durumu gibi şeyleri gösteren, ve hatta sistem bellek gibi bilgi, vb." uygulamalar çok gördüm

Benzer bir şekilde, herhangi bir şekilde almak için geçerli bir miktar kullanılabilir RAM benim app böylece yapabilirim, daha iyi kararlar zaman en iyisi için terk eder ya da tutmak belirli bir görünüm önlemek için hafıza uyarıları?

CEVAP
16 Aralık 2011, Cuma


#import <mach/mach.h>
#import <mach/mach_host.h>

void print_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");
    }

    /* Stats in bytes */ 
    natural_t mem_used = (vm_stat.active_count  
                          vm_stat.inactive_count  
                          vm_stat.wire_count) * pagesize;
    natural_t mem_free = vm_stat.free_count * pagesize;
    natural_t mem_total = mem_used   mem_free;
    NSLog(@"used: %u free: %u total: %u", mem_used, mem_free, mem_total);
}

Lütfen bu çağrıyı gpu tarafından kullanılan bellek için hesap unutmayın. Eğer bir boyut görüyorsanız o sistem ram beklenenden daha küçük. Muhtemelen ayrılmış grafik belleği daha fazladır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Mr_BrettHooge

    Mr_BrettHoog

    3 Ocak 2011
  • MrSuicideSheep

    MrSuicideShe

    9 NİSAN 2010
  • picster

    picster

    20 NİSAN 2006