Reply:
xcode-> open Developer Tool-> Instruments can be selected to monitor the CPU
Reply:
http://hi.baidu.com/_violet_moon/item/c27bcf3d3d1cb3677d034be2
One on ios iPhone / iPad real-time access cpu, memory, hard drives and other usage of the article, try do not know can not be used
Reply:
Upstairs This only gets the memory size has no access to the CPU, but the method should be similar, close
Reply:
LZ question and answer, and no help, no research in this area.
Reply:
Make a note, you can look after yourself, ios CPU access much information
Reply:
iphone developed through unix systems underlying acquisition and system-related hardware information
http://blog.csdn.net/arthurchenjs/article/details/6261776
ArthurChenJS write a blog
Reply:
Upstairs information just get to memory usage.
- (Float) cpu_usage
{
kern_return_t kr;
task_info_data_t tinfo;
mach_msg_type_number_t task_info_count;
task_info_count = TASK_INFO_MAX;
kr = task_info (mach_task_self (), TASK_BASIC_INFO, (task_info_t) tinfo, & task_info_count);
if (kr! = KERN_SUCCESS) {
return -1;
}
task_basic_info_t basic_info;
thread_array_t thread_list;
mach_msg_type_number_t thread_count;
thread_info_data_t thinfo;
mach_msg_type_number_t thread_info_count;
thread_basic_info_t basic_info_th;
uint32_t stat_thread = 0; / / Mach threads
basic_info = (task_basic_info_t) tinfo;
/ / Get threads in the task
kr = task_threads (mach_task_self (), & thread_list, & thread_count);
if (kr! = KERN_SUCCESS) {
return -1;
}
if (thread_count> 0)
stat_thread + = thread_count;
long tot_sec = 0;
long tot_usec = 0;
float tot_cpu = 0;
int j;
for (j = 0; j{
thread_info_count = THREAD_INFO_MAX;
kr = thread_info (thread_list [j], THREAD_BASIC_INFO,
(Thread_info_t) thinfo, & thread_info_count);
if (kr! = KERN_SUCCESS) {
return -1;
}
basic_info_th = (thread_basic_info_t) thinfo;
if (! (basic_info_th-> flags & TH_FLAGS_IDLE)) {
tot_sec = tot_sec + basic_info_th-> user_time.seconds + basic_info_th-> system_time.seconds;
tot_usec = tot_usec + basic_info_th-> system_time.microseconds + basic_info_th-> system_time.microseconds;
tot_cpu = tot_cpu + basic_info_th-> cpu_usage / (float) TH_USAGE_SCALE * 100.0;
}
} / / For each thread
kr = vm_deallocate (mach_task_self (), (vm_offset_t) thread_list, thread_count * sizeof (thread_t));
assert (kr == KERN_SUCCESS);
return tot_cpu;
}
This method can get to the percentages, there are fluctuations, but the value is not accurate, and occasionally jumps to more than 100
No comments:
Post a Comment