Какао - Как программно получить объем памяти, используемый вашим приложением? - PullRequest
5 голосов
/ 16 июня 2011

Я хотел бы знать, сколько памяти использует мое приложение. Как бы я мог получить это программно? Есть ли простой способ сделать это в Какао, или мне придется пройти весь путь до C?

Спасибо!

Ответы [ 2 ]

7 голосов
/ 16 июня 2011

Рабочий фрагмент:

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));
}

К сожалению, я больше не знаю исходный источник.

0 голосов
/ 16 июня 2011
- (NSInteger)getMemoryUsedInMegaBytes
{
    NSInteger memoryInBytes = [self getMemoryUsedInBytes];

    return memoryInBytes/1048576;
}

- (NSInteger)getMemoryUsedInBytes
{
    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 ) 
    {
        return info.resident_size;
    } 
    else 
    {
        return 0;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...