sdk是ios6.1,不开ARC。#import <sys/sysctl.h>
#import <mach/mach.h>-(id)init
{
    self=[super init];
    [self usedMemory];
    [self addtitle:@"d"];
     [self usedMemory];
    return self;
}-(void)addtitle:(NSString *)title
{
    for (double i=0; i<200000;i++) {
        
       // NSString *T2=[@" >    " stringByAppendingString:title];
        
        NSObject * T2=[[NSObject alloc]init];
        [T2 release];
    }
}- (void )usedMemory
{
    task_basic_info_data_t taskInfo;
    mach_msg_type_number_t infoCount = TASK_BASIC_INFO_COUNT;
    kern_return_t kernReturn = task_info(mach_task_self(),
                                         TASK_BASIC_INFO,
                                         (task_info_t)&taskInfo,
                                         &infoCount);
    
    if (kernReturn != KERN_SUCCESS
        ) {
        NSLog(@"Nofound");
    }
    
    NSLog(@"Memery%f", taskInfo.resident_size / 1024.0 / 1024.0);;
}
运行结果:
2013-09-14 18:56:24.240 menerytest[5913:c07] Memery16.789062
2013-09-14 18:56:24.281 menerytest[5913:c07] Memery17.128906如果把  [T2 release];  注释掉:
2013-09-14 19:05:41.786 menerytest[6476:c07] Memery16.890625
2013-09-14 19:05:41.804 menerytest[6476:c07] Memery20.320312原本T2用得是        NSString *T2=[@" >    " stringByAppendingString:title];
不release内存有可观的增长,release后的内存增长类似上面第一个结果,但是程序最后会crash掉。
为啥release掉还是有内存泄漏了呢?尽管十分微小。而且为什么“[@" >    " stringByAppendingString:title]” release后会crash呢?

解决方案 »

  1.   

    stringByAppendingString:title 返回的NSString已经是autorelease的了,你无需再手动去release
      

  2.   

    谢谢1楼,但我还是想知道NSObject * T2=[[NSObject alloc]init];
            [T2 release];这之间的微小内存去哪了
      

  3.   

     [self usedMemory];
    NSAutoreleasePool *pool = [NSAutoreleasePool new];
    .....
        [pool release];
     [self usedMemory];你这样试试.
      

  4.   

    测试了还是一样,还测试过用
     @autoreleasepool {    for (double i=0; i<200000;i++)
        {        
            NSObject * T2=[[NSObject alloc]init];
              [T2 release];
        }
        
        }
      

  5.   

    NSString  上面你不需要释放的吧