私が読んでいる本では、NSAutoreleasePool
排水を強制することについて話しています。NSAutoreleasePool
これは、既に存在するものを排出するのではなく、ローカルを作成してから排出することを意味しますか? つまり、NSAutoreleasePool
2回または複数回排出することはできませんか?
質問する
211 次
1 に答える
2
いいえ、自動解放プールを複数回排出することはできません。
ローカルの NSAutoreleasePool を作成してからドレインするという意味ですか
はい。新しいプールを作成して排出するか、(さらに良い) を使用します@autoreleasepool
。
NSAutoreleasePool を 2 回または複数回排出することはできませんか?
正しい。 状態のドキュメントdrain
:
参照カウント環境では、このメソッドはリリースと同じように動作します。自動解放プールは保持できないため ( retainを参照)、レシーバーの割り当てが解除されます。
自動解放プールは への最初の呼び出しの後に割り当てが解除されるため、後でそのプールのメソッドを呼び出すことdrain
は決して有効ではありません。drain
于 2012-05-13T19:50:31.020 に答える