私はNSTimer
ランニングをしています。NSTimer
アプリは、 (同じビュー コントローラーとアプリ デリゲートを含む)と同時に多くのことを実行しています。理由はNSTimer
わかりませんが、一時停止してラベルが更新されないことがあります。(これは、ユーザーにとって一種のストップ ウォッチとして機能します。)
Instrumentsを使用してこれを理解しようとする必要がありますか?中断されている間に呼び出されるものにグローバルを使用するdispatch_async()
には? または、NSTimer とそれが呼び出すメソッドに優先順位を付ける方法はありますか?
私は次のようにタイマーを作成しています:
oneSecondTicker = [NSTimer scheduledTimerWithTimeInterval:1.0
target:self
selector:@selector(updateLabelsWithOneSecondTicker)
userInfo:nil
repeats:YES];
[[NSRunLoop currentRunLoop] addTimer:oneSecondTicker forMode:UITrackingRunLoopMode]; //!important