Protocol

NSDiscardableContent

You implement this protocol when a class’s objects have subcomponents that can be discarded when not being used, thereby giving an application a smaller memory footprint. あなたがこのプロトコルを実装するのは、あるクラスのオブジェクトが下位構成要素を持ち、それが使われていない時に廃棄されることができ、それによってアプリケーションにより小さいメモリ占有面積を持たせようとする場合です。

Declaration 宣言

protocol NSDiscardableContent

Overview 概要

An NSDiscardableContent object’s life cycle is dependent upon a “counter” variable. An NSDiscardableContent object is a purgeable block of memory that keeps track of whether or not it is currently being used by some other object. When this memory is being read, or is still needed, its counter variable will be greater than or equal to 1. When it is not being used, and can be discarded, the counter variable will be equal to 0. NSDiscardableContentオブジェクトのライフサイクルは、ある「カウンター」変数に依存します。NSDiscardableContentオブジェクトはあるパージ可能なメモリブロックで、それが現在なんらかの他のオブジェクトによって使用されているかどうかの経過を追うものです。このメモリが読み出されている、またはまだ必要とされない時、それのカウンター変数は1と等しいかより大きいでしょう。それが使われていない、および廃棄されることが出来る時、カウンター変数は0と等しいでしょう。

When the counter is equal to 0, the block of memory may be discarded if memory is tight at that point in time. In order to discard the content, call discardContentIfPossible() on the object, which will free the associated memory if the counter variable equals 0. カウンターが0と等しい時、そのメモリブロックは廃棄されるかもしれません、もしメモリが現時点で余裕がないならば。内容を廃棄する手段として、discardContentIfPossible()をそのオブジェクト上で呼び出してください、それは結び付けられるメモリを解放します、もしカウンター変数が0と等しいならば。

By default, NSDiscardableContent objects are initialized with their counter equal to 1 to ensure that they are not immediately discarded by the memory-management system. From this point, you must keep track of the counter variable’s state. Calling the beginContentAccess() method increments the counter variable by 1, thus ensuring that the object will not be discarded. When you no longer need the object, decrement its counter by calling endContentAccess(). 初期状態では、NSDiscardableContentオブジェクトは、それらのカウンターを1に等しく初期化されることで、それらが直ぐにメモリ管理システムによって廃棄されないことを保証します。この瞬間から、あなたはカウンター変数の状態の経過を追わなければなりません。beginContentAccess()メソッドを呼び出すことは、カウンター変数を1だけ増やします、そうしてそのオブジェクトが廃棄されないことを保証しています。あなたがもはやそのオブジェクトを必要としない時、それのカウンターをendContentAccess()を呼び出すことによって減らしてください。

The Foundation framework includes the NSPurgeableData class, which provides a default implementation of this protocol. Foundationフレームワークは、NSPurgeableDataクラスを含みます、それはこのプロトコルの省略時の実装を提供します。

Topics 話題

Accessing Content 内容にアクセスする

Discarding Content 内容を廃棄する

Relationships 関係

Conforming Types これらの型が準拠

See Also 参照

Managing Discardable Content 廃棄可能な内容を管理する