0

有没有办法查看您的应用程序在运行时使用了多少内存?然后,您可以有条件地选择是否允许用户加载更多资产。例如,一个可以让您拼贴照片的应用程序,根据导入照片的大小,您允许的照片总数量可能因项目而异。

4

1 回答 1

1

使用以下函数,它将在运行时为您提供内存使用情况。您可以在代码中进行某些分配之前和之后调用此函数。所以它会给你一些分配的内存使用情况,你可以知道内存在哪里增加。

void memory_report(void) {
        struct task_basic_info info;
        mach_msg_type_number_t size = sizeof(info);
        kern_return_t kerr = task_info(mach_task_self(),
                                       TASK_BASIC_INFO,
                                       (task_info_t)&info,
                                       &size);
        if( kerr == KERN_SUCCESS ) {
            NSLog(@"Memory in use (in bytes): %u", info.resident_size);
        } else {
            NSLog(@"Error with task_info(): %s", mach_error_string(kerr));
        }
    }

希望对你有帮助..

于 2012-05-09T03:32:52.143 回答