ios - ARC下iOS内存管理方法

标签 ios objective-c memory-management memory-leaks automatic-ref-counting

如果我继续调用此方法,内存方面会发生什么情况? (请不要注释代码,这只是一个思想示例。)

-(NSMutableArray*)searchForItemsWithString:(NSString *)searchString
{
    NSString *baseUrl = @"http://www.myService.com/";

    NSURL *tempUrl = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@",baseUrl, searchString]];

    NSMutableArray *tempResultArray = [[NSMutableArray alloc ] initWithContentsOfURL:tempUrl];

    return tempResultArray;
}

tempResultArray 会继续增加引用计数,还是 ARC 会在 tempResultArray 返回后施展魔法并释放它?

最佳答案

ARC 可能(见评论)在返回之前对tempResultArray 进行autorelease 调用。之后会发生什么取决于您程序的其余部分。下次调用此方法时,将创建一个新的 tempResultArray 并重复该过程。

关于ios - ARC下iOS内存管理方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23661973/

相关文章:

c - 为结构内的结构分配内存

c# - 当我使用 List<T> 时,我在 Jetbrains dotMemory 中看到的这个 "pinning handle object[]"是什么?

javascript - 无法在 iOS 模拟器上运行简单的基于 KineticJs 的 Cordova/PhoneGap 应用程序

objective-c - 如何在宏中使用 block

ios - 从 super View 转换点时委托(delegate)不工作

ios - 在 Storyboard 中为 UIButton 设置边框

ios - 如何调整 UITabBarItem 的大小?

ios - 在dispatch_async主队列中尝试saveContext获取核心数据时崩溃

iOS - NSDate 不正确地添加/减去时区差异

memory-management - 在导出 IPC 池指针句柄之前,我们是否应该将其归零?