我对苹果材料感到困惑。
我们有三种方式来管理内存,它们是:
- 自动引用计数。
- 手动引用计数。
- 垃圾回收。
我的疑问是自动引用计数和手动引用计数之间有什么区别。
有人能给我解释一下吗?
我对苹果材料感到困惑。
我们有三种方式来管理内存,它们是:
我的疑问是自动引用计数和手动引用计数之间有什么区别。
有人能给我解释一下吗?
在ARC中,你不需要释放/自动释放你分配的内存,而在手动管理内存的情况下,你必须注意这一点。 例如,手动管理内存的情况:
-(void)someMethod
{
NSMutableArray *arr = [[NSMutableArray alloc] init];
//use array
[arr release]; //when array is in no use
}
ARC 案例
-(void)someMethod
{
NSMutableArray *arr = [[NSMutableArray alloc] init];
//use array
}
在ARC中,操作系统会负责内存管理,因此您不必担心释放对象。这对于初学者来说非常方便。而在手动计数中,您将不得不跟踪释放内存,如果做得不正确,您的应用程序将崩溃。ARC和MRC适用于iOS,而垃圾收集仅限于MAC-OSX。希望这有所帮助。Inder提供了一个很好的例子。
如果您想查看更多信息,我发现这篇文章非常有帮助:https://swift007blog.wordpress.com/2017/01/14/what-is-arc-in-ios/