問題:nstimer準確嗎?如果不準確,怎麼辦?
nstimer的工作原理:假設timer每隔一段時間執行一次事件,很均勻的(例如每隔多少秒),假設在某一時刻cpu在做瘋狂的大量運算,這時候cpu忙啊,就沒時間搭理timer了,那這時候timer的觸發事件就不執行了(timer挺沒地位的),那這一次他就沒有執行,下一次再被呼叫時候,就會再執行,會有任務的疊加,這樣就導致了timer本身是特別不準確的。除非這個程式裡面啥都沒有,或者每隔一小時做點事(一小時差幾秒沒啥好算的。。。)
所以timer通常用來有一定時間跨度的週期性事件。
怎麼辦?
可以用多執行緒技術。
在遊戲中可以用cadisplaylink
也是時鐘,不過是用螢幕重新整理來做,螢幕每秒重新整理60次(60hz)
ios學習資料
ios 7 應用開發 iphone 開發教程 2010 年冬 征戰 objective c github 上正在翻譯的斯坦福最新的 ios8 課程,目前正在翻譯,未完結 簡介 ios 開發的高階課程,開始涉及到 core animation,core data,opengl 等框架的應用 lynda...
iOS面試 iOS面試經典題 NO 9
1 上傳檔案中文檔名亂碼問題 在ios客戶端將檔名用url encode編碼,然後在服務端用url decode解碼。客戶端 nsstringencodingenc nsutf8stringencoding request setdata datawithfilename filename stri...
IOS面試累積
1 oc的優缺點。2 property與 synthesize的作用是什麼?property對成員變數進行屬性宣告,屬性有retain,assign,copy,readonly,writeonly,nonatomical,atomical,同時也宣告其get和set的方法。synthesize用以實...