iviewは今までシングルスレッドで作ってきたものの、HTMLのパースとsiteinfoに従ってのデータ抽出にそれぞれ100~150msかかっていたので別スレッドにすることにしました。 とりあえずdetachNewThreadSelector:toTarget:withObjectを使っていたけれど、毎回スレッドの生成/破棄をするのは非効率的なのでちゃんとNSRunLoopでメッセージを処理するスレッドを作ることにしました。 探してみると、ひとつの長い処理をしておしまいなスレッドのサンプルコードはよくあるものの、メッセージを受け取って動作するスレッドのサンプルはあまりありませんでした。けっきょくiPhotoからmixiにエクスポートするプラグインを作っていた時によく参考にさせていただいたitokさんの記事itok’s Lab : CFRunLoopとCFRunLoopSourceの簡単サン