at_yasu's blog

ロード的なことを

[Cocoa][iPhone][メモ書き] NSThread

何か知らないけど、たまに変な所ではまるNSThreadの事。稀にだけど、device上で無限ループに陥って、アプリが死んでも頑張り続けていた。*1

対策

  • detachNewThreadSelector:toTarget:withObject: を使った場合はNSApplicationのdelegateメソッド「applicationWillTerminate:」内で、「[NSThread exit]」をするべき。
  • NSThreadを「initWithTarget:selector:object:」でインスタンス化した時は、オブジェクト解放時「dealloc」を呼び出された時や、不必要になった時に「cancel」して「release」するべき。当たり前だが・・・

*1:SS撮っときゃよかったけど、まぁいいや・・・