最近看JDK中的concurrentHashMap类的源码,其中有那么一个函数:/** * Returns a power of two table size for the given desired capacity. * See Hackers Delight, sec 3.2...
分类:
其他好文 时间:
2015-03-30 01:09:40
阅读次数:
241
之前在郭大神的博客看到使用LruCache算法实现图片缓存的.这里仿效他的思路,自己也写了一个. 并加入ConcurrentHashMap>去实现二级缓存,因为ConcurrentHashMap是多个锁的线程安全,支持高并发.很适合这种频繁访问读取内存的操作.
下面整个思路是,使用了系统提供的LruCache类做一级缓存, 大小为运行内存的1/8,当LruCache容量要满的时候,会自动...
分类:
移动开发 时间:
2015-03-11 09:23:59
阅读次数:
261
对于map的并发操作有HashTable、Collections.synchronizedMap和ConcurrentHashMap三种,到底性能如何呢? 测试代码: package com.yangyang; import java.util.Collections;
import java.ut...
分类:
其他好文 时间:
2015-03-06 16:51:12
阅读次数:
139
并发编程 01—— ConcurrentHashMap并发编程 02—— 阻塞队列和生产者-消费者模式并发编程 03—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 04—— Callable和Future并发编程 05—— CompletionService : ...
分类:
其他好文 时间:
2015-03-04 18:47:19
阅读次数:
178
首先,他采用了强引用(StrongReference)和软引用(SoftReference)来保存下载的图片(bitmap),具体做法是:StrongReference来保存一定容量的图片(bitmap),当超过这个容量的时候就将其移入SoftReference来保存.
bitmap的加载实际上采用了AsyncTask的多线程方式, 所以是很可能出现多个修改并发操作的.所以采用ConcurrentHashMap最合适.ConcurrentHashMap采用了锁分离技术可以很好的解决多操作并发进行,并且也是...
分类:
移动开发 时间:
2015-02-28 18:47:33
阅读次数:
169
并发编程 01—— ConcurrentHashMap并发编程 02—— 阻塞队列和生产者-消费者模式并发编程 03—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 04—— Callable和Future并发编程 05—— CompletionService : ...
分类:
其他好文 时间:
2015-02-09 12:40:58
阅读次数:
149
并发编程 01—— ConcurrentHashMap并发编程 02—— 阻塞队列和生产者-消费者模式并发编程 03—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 04—— Callable和Future并发编程 05—— CompletionService : ...
分类:
其他好文 时间:
2015-02-09 12:36:04
阅读次数:
123
这个方法在key不存在的时候加入一个值,如果key存在就不放入,等价: if (!map.containsKey(key)) return map.put(key, value); else return map.get(key);测试代码:public class T...
分类:
其他好文 时间:
2015-02-04 12:33:48
阅读次数:
129
Collections.synchronizedMap:实现了线程安全的特性ConcurrentHashMap:保证了线程安全的同时也兼顾了并发访问的性能,将整个数据集合分成了若干个块import java.util.Collections;import java.util.HashMap;impo...
分类:
其他好文 时间:
2015-02-01 17:24:14
阅读次数:
188
如果你是一名Java开发人员,我能够确定你肯定知道ConcurrentModificationException,它是在使用迭代器遍历集合对象时修改集合对象造成的(并发修改)异常。实际上,Java的集合框架是迭代器设计模式的一个很好的实...
分类:
其他好文 时间:
2015-01-30 17:55:08
阅读次数:
195