NSLogでメモリ使用量を出力


XcodeでiPhone/iPadアプリの開発中に気になるのがメモリ管理。
デバックで使用メモリを確認したいときにぜひ。

#import <mach/mach.h>

// ...

void report_memory(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));
  }
}

参考: http://stackoverflow.com/questions/787160/programmatically-retrieve-memory-usage-on-iphone

あと関係ないけどObjective-Cのコーディング規約。
http://www.textdrop.net/google-styleguide-ja/objcguide.xml
http://google-styleguide.googlecode.com/svn/trunk/objcguide.xml