3
非同期操作を行うときにブロックを使用していて、ブロックがビューコントローラのオブジェクトとプロパティを参照している場合、そのブロックはそれらを保持するため、非同期操作の前にビューコントローラから離れるとビューコントローラは解放されません終了?Objective-Cブロック - ブロックは参照するオブジェクトを保持しますか?
非同期操作を行うときにブロックを使用していて、ブロックがビューコントローラのオブジェクトとプロパティを参照している場合、そのブロックはそれらを保持するため、非同期操作の前にビューコントローラから離れるとビューコントローラは解放されません終了?Objective-Cブロック - ブロックは参照するオブジェクトを保持しますか?
はい。ブロックはObjective-Cオブジェクトであり、参照オブジェクトを保持します。あなたはもちろん、そうしないように頼むことができます。
どうすればよいですか? View Controllerを終了したらブロックを解除しますか?また、どうやって彼らに尋ねるのですか? – Boon
例はリンクにあります。外部変数をブロック内部から保持しないようにするには、 '__block'キーワードを使用します。 – gregheo