我想学习如何在命令行中使用泄漏的工具,这里是我的代码应该产生一个泄漏NSString
:
#import <Foundation/Foundation.h>
#import <unistd.h>
int main(int argc, const char *argv[])
{
NSString *string = [[NSString alloc] init];
pid_t pid = getpid();
NSLog(@"pid: %d", pid);
string = nil;
[NSThread sleepForTimeInterval:20];
return 0;
}
我了解到,泄漏刷新本身每10秒(不知道如果这是真的,但我设置的时间间隔为20秒)。
这将产生泄漏,因为它不是自动释放池,也是我编译-fno-objc-arc
的“安全性”。
我试图运行泄漏[pid]
无泄漏报道多次。 我在做什么错在这里? 另外,我是一个命令行风扇和真的希望能够使用类似的valgrind东西,它不支持OS X 10.8很好。 这是烦人,我必须把睡在我的代码才能使用泄漏的工具。
任何人都可以在这里大放异彩一些灯光?