objective-c - 强制 NSDictionary 释放内存

标签 objective-c ios ios5

在 ARC 项目的某个地方,我有:

//Class1.h
@interface Class1 {
    NSDictionary * dict;
}

@结束

//Class1.m
@implementation Class1

-(void)loadDict {
    NSDictionary * dict = [[NSDictionary alloc] init];
    // Now load couple of (NSString *, NSString *) pairs into the dictionary
    ...
}

-(void)releaseAllMemoryUsedByDict {
    //TODO
}

@end

如何按需释放dict占用的所有内存?我想如果我有一个 NSMutableDictionary,我可以调用它的 removeAllObjects 方法。我将如何为 NSDictionary 做这件事?设置 dict = NULL 会起作用吗?

最佳答案

将它设置为 nil 将起作用,假设没有其他对象持有(具有 strong 引用) NSDictionary.

关于objective-c - 强制 NSDictionary 释放内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11225123/

相关文章:

ios - 再次播放文件时调用AVAudioPlayer audioPlayerDidFinishPlaying

ios5 - 将应用程序安装到越狱的 ios Root 的 Applications 文件夹中

ios - 在iOS 8中扫描条形码并显示条形码

iphone - stretchableImageWithLeftCapWidth 使图像模糊

objective-c - 在 Xcode 4.2 中使用 Objective-C ARC 时,如何防止对象被释放?

ios - 没有自动布局,如何在我的 iPhone 应用程序中使用处理 3.5 英寸屏幕和 4 英寸屏幕的单个 iOS Storyboard文件

iphone - 设置较低部署目标时无法编译包含 iOS 5 方法的代码

iphone - 如何禁用 UITableview 单元格的 UserInteraction 但不禁用单元格上的自定义按钮

iphone - 像在 iPhone SMS 应用程序中一样实现添加联系人

c++ - 从 C++ 函数访问 Obj-C 属性 (iOS)