美文网首页
个人理解1

个人理解1

作者: YM_1 | 来源:发表于2016-07-21 16:50 被阅读23次

1、 内存管理理解。

引用计数 是针对创建对象的内存地址。任何赋值操作都是表明一个对象对这块内存地址的引用,只不过 strong 引用会引起 内存地址引用 计数的 +1操作,而 weak 同样会让一个对象指向一个地址,但地址的引用计数并不增加。

runtime采用散列表来管理引用计数

因为autorelease对象要加入pool中,每一个线程都会维护自己的 autoreleasepool 堆栈。换句话说 autoreleasepool 是与线程紧密相关的,每一个 autoreleasepool 只对应一个线程。autorelease对象也就加入到线程对应的 autoreleasepool 了。

PS:lldb watchpoint set v string_weak_ 设置观察点,观察

NSObject ** obj;

NSObject * __autoreleasing * obj;

访问附有 __weak 修饰符的变量时,实际上必须访问注册到 autoreleasepool 的对象,

```

id __weak obj1 = obj0;

NSLog("class=%@", [obj1 class]);

//等价于以下代码

id __weak obj1 = obj0;

id __autoreleasing tmp = obj1;

NSLog("class=%@", [tmp class]);

```

参考地址 http://blog.csdn.net/wzzvictory/article/details/17694129

相关文章

  • 个人理解1

    1、 内存管理理解。 引用计数 是针对创建对象的内存地址。任何赋值操作都是表明一个对象对这块内存地址的引用,只不过...

  • 《原则》个人理解1

    雷·达里奥的《原则》出版了,他罗列的众多原则每一条李笑来都赞同,对我有极大的吸引力。 无奈自己英语太差,读不了原文...

  • Java基础个人理解(1)

    java的由来java是由甲骨文公司开发的跨平台编程语言, 要运行java代码的首要条件就是需要安装JVM虚拟机,...

  • var a = {n:1};题个人理解

  • 个人理解

    人法地,地法天,天法道,道法自然 人要效法(遵循)大地之上一切有形之物(包括人)的运作法则(规律)。 地、天、道 ...

  • 个人理解

    一不小心自己在地产行业也混迹十余年了,虽然心里多少有些不甘心不情愿,但也一直没能跳出去,而且目前看来跳出去的机会优...

  • 个人理解

    参考http://www.softwhy.com/article-8389-1.html 工作区编辑后的文件,是处...

  • 赵熊猫关于iOS的文章索引

    1.Runtime的个人理解 2.Runloop的个人理解 3.iOS - 关于UIView中添加手势监听和tab...

  • 理解1

    我们总希望被理解,却常常被误解和忽视。期望和现实的落差让人们感叹,相识满天下,知心能几人。? 理解,需要有足够的能...

  • GCD 个人理解

    看GCD精讲(Swift 3&4)做的笔记 gcd 让开发人员由面向线程编程编为面向队列编程。 队列: 同步队列、...

网友评论

      本文标题:个人理解1

      本文链接:https://www.haomeiwen.com/subject/kiuxhttx.html