anr的意思是:標準大氣參考,簡稱ANR,在1個標準大氣壓,溫度20攝氏度,相對濕度為65%條件下,氣體的流量。
準狀態下,空氣的密度ρ=1. 185kg/m?。按國際標準IS08778,標準狀態下的單位後面可標
註“(ANR)",如標準狀態下的空氣流量是30m?/h,可寫成30m?/h ( ANR)。過去曾表示成
30Nm?/h。
應用anr的檢測方案:
1、BlockCanary
BlockCanary是國內開發者markzhai開發的壹款非侵入式的輕量性能監控組件,在Github上有接近4000 star。原理巧妙地利用了Android原生Looper.loop中的壹個log打印邏輯。
2、ANR-WatchDog
ANR-WatchDog是參考Android WatchDog機制起個單獨線程向主線程發送壹個變量+1操作,自我休眠自定義ANR的閾值,休眠過後判斷變量是否+1完成,如果未完成則告警。
3、SafeLooper
SafeLooper是個比較新奇的思路,本身就是壹個堵塞的消息,在自己內部進行消息的處理,通過反射接管主線程Looper的功能。