iphone内存管理
Posted
技术标签:
【中文标题】iphone内存管理【英文标题】:iphone memory management 【发布时间】:2009-05-15 10:57:21 【问题描述】:1.UIImageView *img1=[[UIImageView alloc]initwithImage:[UIImage imageNamed:@"1.png"]];
2.UIImageView *img2=[[UIImageView alloc]initwithImage:[UIImage imageNamed:@"2.png"]];
a) img1.image = [UIImage imageNamed:@"2.png"];
b) [img1 setImage:img2];
a 和 b 中哪种方式占用的内存最少?为什么?
如果我需要多次执行此操作,您建议采用哪种方式?
【问题讨论】:
你能提供更多关于你想要做什么的细节吗? 这非常接近于复制刚刚在这里提出的问题:***.com/questions/867945/memory-issue-in-iphone 【参考方案1】:b) 因为您正在创建对现有对象的引用,但它们都将指向“2.png”。在 a) 您正在创建一个对象的新实例,该实例恰好指向同一个文件,但是它被分配为单独的内存空间。
【讨论】:
以上是关于iphone内存管理的主要内容,如果未能解决你的问题,请参考以下文章
iphone(object-c) 内存管理 有效的内存管理 后半部分