deallocが呼ばれない

deallocが呼ばれるタイミングは、

画面が破棄されたタイミング = popやdismissが読んだタイミング

かと思っていたが、正確には、参照が完全になくなった時だった!



■deallocが呼ばれなかった時のやってみるべきコト

・popやdismissの直前で[self retainCount]の値を確認する。
 ⇒この値が「1」ならdeallocが呼ばれる
  1より大きい場合、deallocが呼ばれない (= 参照が残っている)

・@propertyなどで仕様した「self」が破棄されているか確認し、
 破棄されていない場合、nilを設定し破棄する

・実は止めたつもりのタイマーが動いていたなど