zoukankan      html  css  js  c++  java
  • 黑马程序员——ARC机制小结

    ARC全称为Automatic Reference Counting,是一种编译器特性。

      在IOS5之前是没有ARC机制的,那时候内存管理全部要靠程序员自己来。有关内存管理的代码,简单却烦琐。而且还容易发生内存泄漏的错误。自从IOS5之后 编译器增加了自动在适当地方插入适当的retain、release、autorelease语句。你不再需要担心内存管理,因为编译器为你处理一切的内存管理方面的问题。

      那么ARC是通过什么原理来管理内存问题的呢?它有一个判断的准则:只要没有强指针指向对象,就会释放对象。在ARC机制下不允许调用release、retain、retainCount;允许重写dealloc,但不允许调用[super dealloc]。在@property中的应用是将retain改为strong其他不变就行了。那什么是强指针呢,默认情况下,所有指针都是强指针。有强指针就会有弱指针;而弱指针用到的情况不是很多,一般遇到循环引用问题时,在ARC机制下,需要将一端用strong一端用weak;非ARC机制下,一端用retain,一端用assign;

  • 相关阅读:
    Web开发者需具备的8个好习惯
    全球十大搜索引擎排名
    ContextWrapper
    PackageManager
    重写equals方法的注意事项
    StackOverflow 并不只是一个问答网站
    android 中ids.xml资源的使用
    The method dismissDialog(int) from the type Activity is deprecated
    百度员工离职总结:如何做个好员工?
    Mysql 自动化任务
  • 原文地址:https://www.cnblogs.com/newbee010/p/4340752.html
Copyright © 2011-2022 走看看