Monday, 19 August 2013

iPad Application becomes slow after a while

iPad Application becomes slow after a while

I have a point of sale iPad application which works perfectly for the
first few transactions. After about 10 transactions back to back, the app
becomes painfully slow. The UI takes more than a second to respond to
touch down events. So when I kill the application and restart it, it works
perfectly again. I used the following function to check for free VM The
response time seems to be increasing exponentially with each new
transaction and eventually the app becomes unusable.
-(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;
// [self displayAlert:@"Memory" message:[NSString
stringWithFormat:@"used: %u free: %u total: %u", mem_used, mem_free,
mem_total]];
// NSLog(@"used: %u free: %u total: %u", mem_used, mem_free, mem_total);
}
The memory usage seems more or less constant. So,I'm not sure about what
the problem is. Could anyone please help me out with this issue? I've
tried setting objects to nil by myself. But that doesn't seem to be
improving the issue.

No comments:

Post a Comment