程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> iphone-解析iPhone應用內存洩露

iphone-解析iPhone應用內存洩露

編輯:編程綜合問答
解析iPhone應用內存洩露

應用代碼如下:
用來過濾和篩選

- (long)personRecord:(ABRecordRef)paramPerson{

    if(paramPerson == nil){

        NSLog(@"The given Person is Null");
    }

    ABMutableMultiValueRef emails = ABRecordCopyValue(paramPerson, kABPersonEmailProperty);
    if(emails == nil){

        return 0;
    }

    NSLog(@"%ld",ABMultiValueGetCount(emails));
    // return (ABMultiValueGetCount(emails));

    return (ABMultiValueGetCount(emails));
}

但是當解析的時候出現:

enter image description here

怎麼解決這個Leak?

最佳回答:


你是從ABRecordRef中獲得了一份復制的object.釋放一下

修改為如下方法:

- (long)personRecord:(ABRecordRef)paramPerson
  {

    if(paramPerson == nil)
    {

        NSLog(@"The given Person is Null");
    }

    ABMutableMultiValueRef emails = ABRecordCopyValue(paramPerson, kABPersonEmailProperty);
    if(emails == nil)
    {

        return 0;
    }

    NSLog(@"%ld",ABMultiValueGetCount(emails));
    // return (ABMultiValueGetCount(emails));

    long count = ABMultiValueGetCount(emails);
     CFRelease(emails);
     return count;
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved