エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
background処理&delegate通知はサクサク動かすために結構よく使いますが、一歩間違えるとEXE BAD ACCES... background処理&delegate通知はサクサク動かすために結構よく使いますが、一歩間違えるとEXE BAD ACCESSだらけになってしまいます。(経験談) どうやったらEXE BAD ACCESSを防げるのか、なんとなくわかったのでメモってみます。 おおまかな問題点 基本的にはbackgroundの処理が終わる前にdelegate先のオブジェクトが解放されてしまうのが問題です。 しかし、これは単純にオブジェクトが解放されるときにdelegateをnilにするだけでは解決できません。 delegateで呼び出されたメソッドを実行中にオブジェクトが解放される可能性もあるのです。 この場合、delegate先のメソッドが呼ばれてるのでdelegateをnilにしても意味がなく、その後selfやメンバ変数を呼び出してしまうとエラーが出てくるわけです。 回避法 まず、よく使っていたbac