アプリ起動時にひとつだけ生成されるTab管理のControllerでSCEventsのインスタンスを生成する。
Tabにはこんなふうに
表示しているディレクトリのフルパスを保存してあるので、それをNSMUtableArrayにしてSCEventsに渡し、
[events startWatchingPaths:tabTitles];
てな具合でファイルシステム監視の開始。これで無事動いている。
試しにFinder上でファイル操作をしてみたら、自作アプリでもちゃんとファイルの移動などを感知できていた。便利じゃのお。
ただ、Tabを削除してみたら見事にアプリが落ちた。(^^;)Tabを削除する前に
if([events isWatchingPaths]) [events stopWatchingPaths];
をしないといけなかった。
アプリが落ちたときに気づいたのだが、監視するパスの数だけスレッドが分かれるらしい。うーむ、なんだかすごいことになるな。
さて、次は・・・いよいよ大きなサイズのファイルのコピーかな。
0 件のコメント:
コメントを投稿