什麼是最快的我可以運行一個NSTimer,並仍然得到可靠的結果?我已經讀到接近30ms它開始變得無用,所以它開始變得無用「...... 40ms? 50ms的?我應該運行NSTimer的最快速度是什麼?
2
A
回答
4
說the docs:
的時間間隔 爲定時器的有效分辨率僅限於 的50-100毫秒
秩序聽起來像是如果你想要安全,你不應該在0.1秒以內使用定時器。但爲什麼不在自己的應用程序中嘗試它,看看你可以走多低?
你不會在這裏找到保證。 NSTimers本質上是機會主義的,因爲它們與事件循環一起運行,除了Cocoa定時器調度機制的限制之外,它們的有效最細粒度將取決於應用程序中發生的所有其他事件。
1
取決於你試圖完成什麼樣的結果。 NSTimer Class
0.5 - 1.0
是開始獲得可靠結果的好地方。
2
你對可靠性的定義是什麼? 1秒計時器中的16 mS錯誤低於2%錯誤,但30 mS計時器錯誤超過50%。
NSTimers將等待當前運行循環中發生的任何事情完成,並且可以積累任何時間錯誤。例如如果您觸摸顯示N次,所有後續的重複NSTimer啓動可能會延遲0到N個觸摸處理程序所花費的累積時間(加上在「錯誤」時間運行的其他任何內容)。等等。
假設沒有一組前景任務需要的時間長於幀時間,CADisplayLink定時器將嘗試量化幀速率。
相關問題
- 1. 爲什麼Directory.GetFiles()在後續運行中運行速度更快?
- 2. applyForce速度應該更快
- 3. 我該如何加快InfoWindows的運行速度?
- 4. 爲什麼我的android應用程序運行速度變慢?
- 5. 什麼是n的最小值使得算法,其運行時間爲100N^2個的運行速度更快
- 6. 爲什麼我的代碼運行速度更快,如果我編譯codeBlocks
- 7. 當我重定向stdout時,爲什麼我的程序運行速度更快?
- 8. 在MySQL中逐行添加和多行添加速度最快的是什麼
- 9. 獲得UIView響應快速,快速單擊的最佳方式是什麼?
- 10. 爲什麼KNN中的KNN實現運行速度更快?
- 11. 爲什麼PHP的運行速度快於MySQL
- 12. NSTimer快速進入
- 13. 快速簡單:爲什麼不運行?
- 14. 爲什麼第一次運行HttpClient速度很慢但速度要快得多?
- 15. 我應該使用什麼協議進行快速命令/響應交互?
- 16. 爲什麼兩個連接運行速度比OR條件快?
- 17. 爲什麼儀表C程序運行速度更快?
- 18. 爲什麼腳本「預熱」後Matlab運行速度更快?
- 19. 我應該以快速獲取方法返回什麼
- 20. 他們之間的速度更快(使用asm或不使用)和速度實際上應該是什麼
- 21. 爲什麼我的代碼在運行Performance Analysis時速度更快?
- 22. 什麼是NSTimer對象的最佳值?
- 23. 我的jQuery運行速度有點慢。我如何加快速度?
- 24. 爲什麼quickSort運行速度較慢?
- 25. 爲什麼我不需要在node.js中快速運行
- 26. 什麼是讓Rails 3應用程序快速運行的好資源
- 27. 爲什麼使用少於最大的線程會讓我的內核運行速度更快?
- 28. 與命令行相比,爲什麼我的應用程序在IntelliJ中運行速度更快?
- 29. 學習Android並快速開始開發應用的最快方式是什麼?
- 30. 運行速度最快的迭代器,用於佔位符
應該避免快速運行,重複,定時器;他們傾向於消耗電池並使應用程序無響應。 – bbum 2010-11-27 02:30:06
可能重複[在高頻率下使用NSTimer?](http://stackoverflow.com/questions/4289588/using-an-nstimer-at-high-frequencys) – 2010-12-05 21:17:37