前々回からの続き。
NSURLConnection で非同期でフィードを勝手に読み込んでくれるのは助かるよ。
けど、NSURLConnection で非同期処理をほぼ同時期にいっぱい開くのはどうだろうか。
良くなくなくないってことで対応しようと思う。
ここで、libxml2 のことでなくて NSOperation の話に変わって行くことになるらしい。
気にせず進める。
調べてたらNSOperation使うのは、裏で複数の処理を動かしたいんだったら、行儀よくスレッド分けて動かしたほうがいいんじゃないか。ってことっぽい。
しかし難しい。いろいろと調べてて混乱が深まるばかりだ。
いま混乱しているのは通知のところ。
NSOperationQueueのキューに突っ込んだNSOperation なインスタンスは、メインスレッドからは切り離されて処理されてるけど、処理が終了したときはメインスレッドに「終わったよ」ってお知らせしてね。これが通知。
で、混乱してるのは通知する方法が2つあるっぽいってこと。
1.キー値監視
2.Cocoa Notification
NSOperation のことをあっちこっち見ながら調べてると、キー値監視でやってることが多い。
AppleのサンプルのTopSongsだとNotification使ってる。
どうするか。通知はどっちでやっていくか。
簡単そうなのはキー値監視する方。
Cocoa Notification は茨の道だけど、使えるようになると応用が効きそう。
って、両方やらないとだろ。
ってことで「Objective-C + libxml2 を使ってフィードを取り込みたいんだ」の続きを中断して
・「キー値監視(key-value observing 略してKVO)を調べる」
・「Cocoa Notification を調べる」
を(できれば)やっていきたい。
(そろそろ挫折するかもしれん。)
0 件のコメント:
コメントを投稿