NSArray filteredArrayUsingPredicate内存泄漏

时间:2017-12-29 14:08:12

标签: objective-c core-data memory-leaks nsarray

尝试在for循环中使用NSPredicate来搜索NSArray中日期范围内NSDate字段值的记录时,我遇到了巨大的内存泄漏 - 像这样:

for(int i=0;i<nLen;i++)
{
  NSPredicate *predicate = [NSPredicate predicateWithFormat:@"date >=  %@ AND date <=  %@", dateStart,dateEnd];
  NSArray *result = [myDataArray filteredArrayUsingPredicate:predicate];
} 

简单测试表明它是filteredArrayUsingPredicate函数泄漏。

在iPhone 7s上使用XCode版本9.2(9C40b)和iOS 11.2.1。

有没有人见过这个?

1 个答案:

答案 0 :(得分:3)

Willeke的回答是答案:在循环中放置一个@autoreleasepool块。谢谢!