Android Runtime.getRuntime().freeMemory()会返回0吗?
背景
上周基于LruCache实现了一个缓存,实现逻辑大概如下:
//使用剩余内存的1/16作为缓存池的最大值
int size = Runtime.getRuntime().freeMemory() / 16;
LruCache<String, String> myCache = new LruCache<String, String>(cacheSize) {
protected int sizeOf(String key, String value) {
//自定义size计算方式
....
}
};
以上写法和官方文档Caching Bitmaps类似,区别在于官方文档用的是Runtime.getRuntime().max