3.16android debug 获取cpu使用率和内存占用率

原文:http://www.oschina.net/translate/encryption-decryption-invoking-openssl-api-through-jni-calls?from=20150315


下面的代码可以帮助我们了解cpu平均使用率 (利用存储在/proc/stat的信息)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public  float  readCPUusage() {
             try  {
       RandomAccessFile reader =  new  RandomAccessFile( "/proc/stat" "r" );
       String load = reader.readLine();
       String[] toks = load.split( " " );
       long  idle1 = Long.parseLong(toks[ 5 ]);
       long  cpu1 = Long.parseLong(toks[ 2 ]) + Long.parseLong(toks[ 3 ])
                               + Long.parseLong(toks[ 4 ]) + Long.parseLong(toks[ 6 ])+ Long.parseLong(toks[ 7 ]) +Long.parseLong(toks[ 8 ]);
                   try  {
                         Thread.sleep( 360 );
                   catch  (Exception e) {
                   }
 
                   reader.seek( 0 );
                   load = reader.readLine();
                   reader.close();
                   toks = load.split( " " );
                   long  idle2 = Long.parseLong(toks[ 5 ]);
                   long  cpu2 = Long.parseLong(toks[ 2 ]) + Long.parseLong(toks[ 3 ])+ Long.parseLong(toks[ 4 ]) + Long.parseLong(toks[ 6 ])
                         + Long.parseLong(toks[ 7 ]) + ong.parseLong(toks[ 8 ]);
                   return  ( float ) (cpu2 - cpu1) / ((cpu2 + idle2) - (cpu1 + idle1));
             catch  (IOException ex) {
                   ex.printStackTrace();
             }
             return  0 ;

下面的代码读取可用的系统内存.

Memory Info 是一个Android API,它允许我们查询可用的内存信息.

由于, 1024 Bytes = 1 kB & 1024 kB = 1 MB. 因此, 转换可用内存到 MB - 1024*1024 == 1048576

?
1
2
3
4
5
6
public  long  readMem(ActivityManager am) {
             MemoryInfo mi =  new  MemoryInfo();
             am.getMemoryInfo(mi);
             long  availableMegs = mi.availMem / 1048576L;
             return  availableMegs;
       }






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值