0

考虑我正在分配一个对象。请看下图

在此处输入图像描述

在上图中,*myObject 是一个指针。它指的是分配给该对象的空间。当我们保留对象时,我想知道它在后端做了什么。我也想知道我们为什么要这样做。

此外,当我们发布它时,它在后端是如何工作的。

我也想知道当我们复制一个对象时后端会发生什么。

如果我的问题如此基本,我真的很抱歉。

4

1 回答 1

3

保留在幕后的实际作用是:

  1. 在 objc 运行时中获取全局锁
  2. 根据指向被保留对象的指针查找哈希表条目
  3. 在该条目中增加一个计数器
  4. 释放锁

我不认为这在实践中会有那么大的帮助,但我认为这就是你所要求的。

于 2012-10-20T16:27:28.447 回答