Objective-C 的 ARC 有什么缺点,是否能完全避免内存泄露
2016-03-21
展开全部
用arc和非arc混编,非arc的类在arc里实例化并且使用,在arc里居然出现内存泄露,而且应为是arc,所以无法使用release,autorelease和dealloc去管理内存,大侠们有遇到这个问题吗?请问有什么解决方案吗?
应该是不会出现你这种情况的,某一个类若是ARC,则在这个类里面都应该遵循ARC的用法,而无需关心用到的类是否是ARC的,同样,在非ARC类里面,就需要遵循内存管理原则。
用ARC,只是编译器帮你管理了何时去release,retain,不用ARC就需要你自己去管理,说到底只是谁去管理的问题,所以你再好好看看,可能问题与ARC无关。
如果实在找不到问题,建议你找到泄露的那个对象,将其赋值为nil,因为ARC里面,一旦对象没有指针指向,就会马上被释放
应该是不会出现你这种情况的,某一个类若是ARC,则在这个类里面都应该遵循ARC的用法,而无需关心用到的类是否是ARC的,同样,在非ARC类里面,就需要遵循内存管理原则。
用ARC,只是编译器帮你管理了何时去release,retain,不用ARC就需要你自己去管理,说到底只是谁去管理的问题,所以你再好好看看,可能问题与ARC无关。
如果实在找不到问题,建议你找到泄露的那个对象,将其赋值为nil,因为ARC里面,一旦对象没有指针指向,就会马上被释放
博阳精讯
2024-07-25 广告
2024-07-25 广告
IDS Scheer,作为全球知名的业务流程管理和企业信息建设解决方案提供商,以其在流程管理领域的卓越表现和创新能力赢得了业界的广泛认可。自创立以来,IDS Scheer致力于为企业提供高效、全面的流程管理服务,通过其领先的产品ARIS,成...
点击进入详情页
本回答由博阳精讯提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询