2011-01-16 6 views

答えて

2

getCFRunLoopを呼び出して、Core Foundation RunLoopを取得できます。 CFRunLoopにオブザーバを追加するだけです。この関数のドキュメントを参照してください。

CFRunLoopAddObserver()

+2

実行ループが一定の間隔で起動しないため、これは一定の間隔で呼び出されるオブザーバ関数を取得しないことに注意してください。一定の「フレームレート」はありません。実行ループは、何かを実行する必要があるときに何かを実行します。それまでは、実行ループはマイクロ秒から数年の間、任意の時間スリープする可能性があります。一方で、これはあなたが必要とするものであるかもしれません。アプリケーションで何も起こっていなければ、それについて何もする必要はないかもしれません。一方、固定間隔または最大間隔で発砲する必要がある場合は、タイマーまたは遅延実行の方がよいでしょう。 –

0

にタグはココアではなくココアタッチであるので、あなたは、すべての画面のフレーム更新と同期するかどうかをチェックする必要がありますので、私はあなたがOSXをターゲットにしていると仮定していますout CVDisplayLink

私はかなりの時間があることを知っています。とにかく、これは私のようにここで遭遇した誰かのために役立つかもしれません。

関連する問題