效能檢測 RAM

2021-10-24 20:40:31 字數 1119 閱讀 5051

cpu、fps 都已介紹過了,自然避免不了要介紹一波記憶體。

記憶體分為兩大類:ram 和 rom。

本篇所說的效能檢測-記憶體,主要說的就是 ram。

在你對某件事無從下手的時候,不妨去看看大佬們的寫法。

這個類我們或許都沒聽說過,不過從大佬們的原始碼中,不難發現,檢測記憶體的方法主要依賴於此類。

既然主要依賴此類,我們不妨看看此類主要功能?

/**

* process. the returned info is broken down by dalvik, native, and other. all results are in kb.

* 翻譯:這個類用於檢索關於這個程序的記憶體對映的各種統計資訊。返回的資訊包括 dalvik、native 和 other。所有結果都以kb為單位。

*/public

static

class

memoryinfo

implements

parcelable

從官方文件的解釋中我們可以看出,要檢測 ram 可以從這個類出發。

要想要使用 memoryinfo 來檢測 ram,我們首先要能夠獲取到 memoryinfo。

我們可以很輕鬆的發現 debug 類中有獲取 memoryinfo 的方法:

從上圖中可以看出,此方法對 android q 不太友好,因此我們只能在 sdk<=28 的時候使用此方法。

val memorydata: float

get()

else

}val totalpss = meminfo?

.totalpss ?:0if

(totalpss >=0)

}catch

(e: exception)

return mem

}

上文若存在問題,歡迎指出!

效能優化 記憶體優化建議(RAM)

原因 service的執行需要浪費記憶體,而且系統傾向保留這個service從而保留serivce的程序。解決方法 最後使用intentservice代替普通的service,當service不使用了就殺死。情景 當載入乙個bitmap的時候,將bitmap的大小設定為當前螢幕畫素的大小就可以了。原...

提公升Xcode編譯效能,RAM磁碟編譯

deriveddata xcode會在檔案系統中集中的快取臨時資訊。每次對xcode ios專案進行clean build或者在ios虛擬機器上launch,xcode都會在derivedata資料夾中進行讀寫操作。換句話說,就是將derived data的讀寫從硬碟移動到記憶體中。deriveda...

提公升Xcode編譯效能,RAM磁碟編譯

deriveddata xcode會在檔案系統中集中的快取臨時資訊。每次對xcode ios專案進行clean build或者在ios虛擬機器上launch,xcode都會在derivedata資料夾中進行讀寫操作。換句話說,就是將derived data的讀寫從硬碟移動到記憶體中。deriveda...