iPhone应用中如何避免内存泄露—〔厦门手机开发培训〕.docxVIP

  • 0
  • 0
  • 约1.03千字
  • 约 2页
  • 2017-05-13 发布于北京
  • 举报

iPhone应用中如何避免内存泄露—〔厦门手机开发培训〕.docx

iPhone应用中如何避免内存泄露—〔厦门手机开发培训〕

iPhone应用中如何避免内存泄露—(厦门手机开发培训)我们厦门博看文思曾经对iPhone的内存管理做过比较深入的报道,如何有效控制iPhone内存管理的对象的所有权与引用计数和以及iPhone内存的自动释放与便捷方法。本文我们厦门博看文思将介绍在iPhone应用中如何避免内存泄露。想了解“在iPhone应用中如何避免内存泄露”就必须先了解iPhone内存管理的所有权。  关于所有权  所有权是iPhone内存管理的核心思想,对象的所有者负责在使用完对象后进行释放。一个对象可以有多个所有者,当它没有所有者时将被设置为取消分配(deallocation)。  创建对象时,所有权通过alloc、new、或者copy的方式建立,之后通过调用retain或者通过Cocoa函数来分配和复制对象的所有权。内存释放有两种方式,一种方法是明确地请求释放对象的所有权,另一种方法则是使用自动释放池(auto-releasepool)。  所有权的背后是一个和引用有关的运算系统,iPhoneSDK的大多数对象使用这个系统,彼此之间建立着很强的引用和参照。  当你创建一个对象时,引用值为1,调用一次retain则对象的引用值加1,调用一次release则对象的引用值减1,当引用值为0时,对象的所有权分配将被取消。使用自动释放池意味着对象的所有权将在一段延后的时间内被自动取消。  对象之间也可以建立弱的引用

文档评论(0)

1亿VIP精品文档

相关文档