[英]Xamarin Android application memory usage
我一直在查看我創建的xamarin安卓應用程序的內存使用情況,與其他設備上的其他運行本機Android應用程序相比,它看起來相當高(運行一段時間后大約70Mb)。 我開始對此進行一些調查,最初是通過將我的應用程序的內存使用情況與其他xamarin android應用程序進行比較。 我查看了一些示例應用程序,例如“Employees”(可在xamarin工作室首頁或xamarin網站上找到)。
我注意到,當這個應用程序(和我的應用程序)啟動時,它們會一直使用大約25-30Mb的RAM,即使我沒有在主啟動器活動中加載布局,也會發生這種情況。 這是預期的嗎? 這似乎相當高,因為在Android設備上運行的許多其他應用程序可能只會在運行幾天后獲得這么高? 如果是這樣,那么我只需要盡力使應用程序的其余部分盡可能高效,但我想澄清一下這個觀察是否是由其他人做出的?
與此同時,我正在關注最小化內存使用情況(上下文生命周期和布局層次結構等)的android開發人員網站建議,盡我所能保持內存使用的其余部分更低。
使用了一些標准工具(MAT是主要起點)后,我一直在努力確定究竟是什么消耗了這個內存。
所以我的問題是:這是Xamarin Android應用程序在加載第一個活動時消耗的典型內存量(甚至在加載布局之前)以及用於確定每個進程使用多少內存的最佳xamarin兼容工具。
這個郵件列表主題可能很有趣: http : //mono-for-android.1047100.n5.nabble.com/RAM-Usage-of-applications-written-with-monodroid-td5711289.html (它來自2012年,所以它是可能從那以后有了改進)。
一些關鍵點:
我對應用程序的RAM使用感興趣。 我們用monodroid編寫了一個使用增強現實的應用程序,它的用法通常是50MB-60MB。
請注意,
adb shell ps
數字是眾所周知的誤導[...]。 要確定Mono GC堆大小,您應該使用GC.GetTotalMemory()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.