Overview 概要
NSPurgeable
objects inherit their creation methods from their superclass, NSMutable
while providing a default implementation of the NSDiscardable
protocol.
NSPurgeable
オブジェクトは、それらの作成メソッドをそれらのスーパークラス、NSMutable
から継承する一方で、NSDiscardable
プロトコルの省略時の実装を提供しています。
All NSPurgeable
objects begin "accessed” to ensure that they are not instantly discarded. The begin
method marks the object’s bytes as “accessed,” thus protecting them from being discarded, and must be called before accessing the object, or else an exception will be raised. This method returns true
if the bytes have not been discarded and if they have been successfully marked as “accessed”. Any method that directly or indirectly accesses these bytes or their length when they are not “accessed” will raise an exception. When you are done with the data, call end
to allow them to be discarded in order to quickly free up memory.
全てのNSPurgeable
オブジェクトは "被アクセス状態” を開始することで、それらが即座に廃棄されないことを確実にします。begin
メソッドは、オブジェクトのもつバイトを “被アクセス状態” であると印します、そうしてそれらを廃棄されることから保護しています、そしてオブジェクトにアクセスする前に呼び出されなければなりません、さもなければ例外が引き起こされるでしょう。このメソッドはtrue
を、もしそのバイトが廃棄されなかったならば、そしてそれらがうまく “被アクセス状態” と印されたならば、返します。どんなメソッドであれ直接にまたは間接にそれらのバイトまたはそれらの長さにアクセスを、それらが “被アクセス状態” でない時にするものは、例外を引き起こします。あなたがデータを使い終わる時には、end
を呼び出して、早急にメモリを使えるようにそれらが廃棄されるようにしてください。
You may use these objects by themselves, and do not necessarily have to use them in conjunction with NSCache
to get the purging behavior. The NSCache
class incorporates a caching mechanism with some auto-removal policies to ensure that its memory footprint does not get too large.
あなたは、それらのオブジェクトをそれら自身で使うかもしれません、そしてそれらをNSCache
と連携して使って放棄挙動を得る必要は必ずしもないかもしれません。NSCache
クラスは、いくつかの自動除去方針を持つキャッシュの仕組みを取り入れて、それのメモリ占有領域が大きくなりすぎないことを確実にします。
NSPurgeable
objects should not be used as keys in hashing-based collections, because the value of the bytes pointer can change after every mutation of the data.
NSPurgeable
オブジェクトは、キーとしてハッシュ基盤のコレクションにおいて使われるべきではありません、なぜならバイトポインターの値はデータのどの変化の後でも変化する可能性があるからです。