NSTimerがうまく動作しないか、時間間隔が0.5秒未満またはneno秒の場合に希望の方法を時間通りに呼び出せません。 NSTimerの代わりに0.5秒以下の時間間隔で働くことのできる代替手段はありますか?何も前に予め時間間隔が0.5秒未満の場合はNSTimerがうまくいきません。目的のC
-2
A
答えて
3
で
おかげで、精度は半秒よりもはるかに優れています。私のテストは100ミリ秒でも良い結果を出します。
問題は火災の遅延ではなく、残念です。つまり、タイマーは特定の間隔でポーリングされ、遅延がその間隔に近い場合、問題が発生する可能性があります。たとえば、タイマーは30ミリ秒ごとにチェックされ、タイマーは31ミリ秒でスケジュールされているとします。 30ミリ秒後にはまだ延期されていないので、トリガしません。ただし、30 ms後に次のチェックが行われますので、実際には31から31 msではなく60 ms後にタイマーが実際に起動されます。
Grand Central Dispatchタイマーを使用することができます。ただし、メインキューにディスパッチすると、最適ではない結果が得られる可能性があります。
関連する問題
- 1. 時間間隔
ウィキペディアは「引用が必要」と言っているので、あなたの情報源は信頼できませんでした。あなたがタイマーを必要とするものについて説明すれば、「NSTimer」が適切かどうか、より良い選択肢があるかどうかを教えてくれるでしょう。 –
Appleデベロッパードキュメントのどのセクションを確認しましたか? – bneely
あなたがナノ秒を話すなら、NSTimerは本当に適切なツールではありません。 :) –