1.检查系统总内存
liuhx@uc ~ $ adb shell cat /proc/meminfo MemTotal: 840868 kB MemFree: 457344 kB Buffers: 1744 kB Cached: 203064 kB SwapCached: 0 kB Active: 234932 kB Inactive: 129644 kB Active(anon): 170292 kB Inactive(anon): 0 kB Active(file): 64640 kB Inactive(file): 129644 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 0 kB Writeback: 0 kB AnonPages: 159820 kB Mapped: 97916 kB Slab: 7808 kB SReclaimable: 2920 kB SUnreclaim: 4888 kB PageTables: 3516 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 420432 kB Committed_AS: 1295272 kB VmallocTotal: 122880 kB VmallocUsed: 16508 kB VmallocChunk: 76804 kB
第一行MemTotal就是总内存。一般并不会等于手机标榜的数值。说是2G内存的手机,会在1.8G左右
2.检查某个程序的各类型内存占用
可用dumpsys meminfo 包名。不知道包名的话,可以用ps命令得到所有运行的程序,也包括得到pid。以自带的浏览器为例:
liuhx@uc ~ $ adb shell dumpsys meminfo com.android.browser Applications Memory Usage (kB): Uptime: 23140065 Realtime: 23140065** MEMINFO in pid 939 [com.android.browser] ** Shared Private Heap Heap Heap Pss Dirty Dirty Size Alloc Free ------ ------ ------ ------ ------ ------ Native 7111 748 7048 8964 8634 329 Dalvik 7338 5096 6892 7568 7041 527 Cursor 0 0 0 Ashmem 276 0 276 Other dev 4 0 0 .so mmap 5050 1728 252 .jar mmap 0 0 0 .apk mmap 418 0 0 .ttf mmap 439 0 0 .dex mmap 0 0 0 Other mmap 2320 16 24 Unknown 5173 12 5172 TOTAL 28129 7600 19664 16532 15675 856 Objects Views: 104 ViewRootImpl: 1 AppContexts: 4 Activities: 1 Assets: 2 AssetManagers: 2 Local Binders: 15 Proxy Binders: 19 Death Recipients: 0 OpenSSL Sockets: 0 SQL MEMORY_USED: 1468 PAGECACHE_OVERFLOW: 899 MALLOC_SIZE: 168 DATABASES pgsz dbsz Lookaside(b) cache Dbname 4 1180 68 54/55/9 /data/data/com.android.browser/databases/browser2.db 4 1180 25 1/60/2 /data/data/com.android.browser/databases/browser2.db (2) 4 1180 65 90/23/7 /data/data/com.android.browser/databases/browser2.db (1) 4 40 18 0/15/1 /data/data/com.android.browser/databases/webview.db Asset Allocations zip:/system/app/Browser.apk:/resources.arsc: 881K
dumpsys的输出结果在不同版本的android系统可能不同。
其中Pss Total是程序占用的PSS。
3.检查程序状态
liuhx@uc ~ $ adb shell cat /proc/939/status Name: android.browser State: S (sleeping) Tgid: 939 Pid: 939 PPid: 38 TracerPid: 0 Uid: 10013 10013 10013 10013 Gid: 10013 10013 10013 10013 FDSize: 256 Groups: 1015 1028 3003 50013 VmPeak: 215504 kB VmSize: 206780 kB VmLck: 0 kB VmHWM: 52108 kB VmRSS: 47748 kB VmData: 53616 kB VmStk: 84 kB VmExe: 8 kB VmLib: 29300 kB VmPTE: 156 kB Threads: 29 SigQ: 0/6656 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000001204 SigIgn: 0000000000000000 SigCgt: 00000002000094e8 CapInh: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000 CapBnd: fffffffffffffeff voluntary_ctxt_switches: 451 nonvoluntary_ctxt_switches: 3563
VmRss是程序占用的RSS
4.检查程序各部分的内存占用。
cat /proc/939/smaps
4b399000-4b39b000 r--p 0001d000 1f:00 560 /system/lib/libGLESv1_enc.so Size: 8 kB Rss: 8 kB Pss: 8 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 8 kB Referenced: 8 kB Swap: 0 kB KernelPageSize: 4 kB MMUPageSize: 4 kB 4b39b000-4b39c000 rw-p 0001f000 1f:00 560 /system/lib/libGLESv1_enc.so Size: 4 kB Rss: 4 kB Pss: 4 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 4 kB Referenced: 4 kB Swap: 0 kB KernelPageSize: 4 kB MMUPageSize: 4 kB
本文向大家介绍C# WinForm应用程序降低系统内存占用方法总结,包括了C# WinForm应用程序降低系统内存占用方法总结的使用技巧和注意事项,需要的朋友参考一下 背景: 微软的 .NET FRAMEWORK 现在可谓如火如荼了。但是,.NET 一直所为人诟病的就是“胃口太大”,狂吃内存,虽然微软声称 GC 的功能和智能化都很高,但是内存的回收问题,一直存在困扰,尤其是 winform 程序,
script/下的memstat.sh或者ps_mem.py都可以查看系统的内存情况,两个工具都需要root权限。
Android Studio似乎比其他任何应用程序占用更多内存。Java二进制增加了速度,过一会儿就慢下来了。通常重启android studio可以解决这个问题,但是,我需要每隔几个小时重启一次。在撰写本文时,Android Studio和Java总共占用了大约2.5GB内存。以前觉得eclipse不好:) 我有10GB的RAM,但仍然发现它使用缓慢,有时偶尔会挂起。我想知道其他人是否也面临着同
#!/bin/bash # Get current swap usage for all running processes # Erik Ljungstrom 27/05/2011 # Modified by Mikko Rantalainen 2012-08-09 # Pipe the output to "sort -nk3" to get sorted output # Modified
嗨,我对java编程还比较陌生。我编写的下面的程序似乎占用了很多内存(大约240 MB,正常吗?-我不这么认为!)请建议一些方法来优化这个程序,以便减少内存存储。 程序-- 代码-
请看看下面的代码: 当我使用这样的处理程序时,我收到一个警告“处理程序应该是静态的,否则它很容易发生内存泄漏。有人能告诉我最好的方法是什么吗?