CPU占比優(yōu)化小記

image.png

場景:
高頻300ms,數(shù)組分割,條件過濾,二維數(shù)組對象屬性自定義排序,條件限制(相同累加,不足再次補位),刷新cell
要點:
1、切記注冊 cell
2、行高用屬性
3、cell盡可能手碼 frame
4、autoreleasepool運用
5、block回調(diào)優(yōu)于通知
6、removeObjectAtIndex:優(yōu)于removeObject:
7、無法避免for循環(huán),就盡可能在for里少調(diào)用方法、判斷等
8、加入數(shù)組前先過濾元素,而不是全部加入后再循環(huán)過濾
9、直接判斷BOOL值,別再判斷與YES/NO的相等
10、不要濫用hook,防止數(shù)組越界、字典加空雖防止了崩潰卻也沒調(diào)試問題未知性帶來了麻煩,只在生產(chǎn)上加更好一些。高頻調(diào)用時,會卡CPU,剔除hook后,其他多界面會崩潰,治理麻煩。
11、如當前頁面未顯示、app處后臺等不需要更一步調(diào)用方法的場景應(yīng)提前return
12、如果可以,NSMutableSet替換NSMutableArray,并限制Capacity
13、字典去重addEntriesFromDictionary:,前者里和后者里同名的key的值會被后者的值替代,相比調(diào)用被hook后導(dǎo)致for里的objectAtIndex:所損失的性能更優(yōu)一些
14、sortUsingComparator:優(yōu)于雙重for i j 冒泡排序

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容