效能優化學習

2021-08-27 07:57:32 字數 1166 閱讀 3696

離屏渲染的效能問題主要體現在兩個方面:

特殊的離屏渲染

- (void)display );

});}

除錯 color hits green and misses red 參考鏈結

除錯 光柵化的核心思想是快取。通過滑動可以看到:

color copied images

color misaligned images

除錯 *color misaligned images 表示如果需要縮放則標記為黃色,如果沒有畫素對齊則標記為紫色。

color offscreen-rendered yellow

// 設定圓角

label.layer

.maskstobounds = true

label.layer

.cornerradius = 8

label.layer

.shouldrasterize = true

label.layer

.rasterizationscale = layer.contentsscale

color non-standard su***ce formats (不標準的表面顏色格式)

color immediately

color compositing fast-path blue

flash updated regions

總結: 優化滑動效能主要涉及到三個方面

避免圖層混合

確保控制項的opaque屬性設定為true,確保backgroundcolor和父檢視顏色一致且不透明

如無特殊需要,不要設定低於1的alpha值

確保uiimage沒有alpha通道

避免臨時轉換

確保大小和frame一致,不要在滑動時縮放

確保顏色格式被gpu支援,避免勞煩cpu轉換

慎用離屏渲染

絕大多數時候離屏渲染會影響效能

重寫drawrect方法,設定圓角、陰影、模糊效果,光柵化都會導致離屏渲染

設定陰影效果是加上陰影路徑

滑動時若需要圓角效果,開啟光柵化

參考文章:

效能優化學習筆記

js css鬆散耦合盡量避免直接用js操作樣式,改為控制類名 element.classname edit 解耦應用邏輯和事件處理程式 使用常量優化效能,提公升 維護性 避免全域性查詢 優化迴圈效能乙個基本的for迴圈 for let i 0 i values.length i 乙個減值操作的for...

ORACLE SQL效能優化(學習筆記)

記錄小的表應該在from的最後 多表查詢時 寫條件時from最後的哪個表應該先寫 where條件時要先寫表之間的連線 select 字句避免用 儘量減少訪問資料庫的次數 刪除全表時用truncate替代delete 不可恢復 盡量多使用 mit 使用表的別名 alias 使用exists替代in 並...

LInux效能優化學習(二)

先用vmstat檢視系統上下文切換次數和中斷次數 然後通過pidstatguancha程序的自願上下文切換和非自願上下文切換情況 最後通過pidstat觀察執行緒的上下文切換情況,找出上下文切換次數增多的根源。使用的工具sysbench。先用top檢視系統和程序的cpu使用情況,發現cpu使用率公升...