0

オブジェクトを割り当てているとします。下の画像をご覧ください

ここに画像の説明を入力

上の画像の *myObject はポインターです。そのオブジェクトに割り当てられたスペースを参照しています。オブジェクトを保持するとき、バックエンドで何をするのか知りたいです。また、なぜ私たちがそうしているのかを知りたいです。

また、リリース時にバックエンドでどのように機能するかについても説明します。

また、オブジェクトをコピーするときにバックエンドで何が起こるかを知りたいです。

私の質問がとても基本的なものでしたら、本当に申し訳ありません。

4

1 に答える 1

3

内部で保持が実際に行うことは次のとおりです。

  1. objc ランタイムでグローバル ロックを取得する
  2. 保持されているオブジェクトへのポインターに基づいてハッシュ テーブル エントリを検索する
  3. そのエントリのカウンターをインクリメントします
  4. ロックを解除する

これが実際に役立つとは思いませんが、あなたが求めていたものだと思います。

于 2012-10-20T16:27:28.447 に答える