Skip to content

Instantly share code, notes, and snippets.

@shnhrrsn
Created March 10, 2012 19:16
Show Gist options
  • Save shnhrrsn/2012597 to your computer and use it in GitHub Desktop.
Save shnhrrsn/2012597 to your computer and use it in GitHub Desktop.
UIDevice AvailableMemory
#import <UIKit/UIKit.h>
@interface UIDevice (AvailableMemory)
- (double)availableMemory;
@end
#import "UIDevice+AvailableMemory.h"
#include <sys/sysctl.h>
#include <mach/mach.h>
@implementation UIDevice (AvailableMemory)
- (double)availableMemory {
vm_statistics_data_t vmStats;
mach_msg_type_number_t infoCount = HOST_VM_INFO_COUNT;
kern_return_t kernReturn = host_statistics(mach_host_self(), HOST_VM_INFO, (host_info_t)&vmStats, &infoCount);
if(kernReturn != KERN_SUCCESS) {
return NSNotFound;
}
return ((vm_page_size * vmStats.free_count) / 1024.0) / 1024.0;
}
@end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment