- 浏览: 232482 次
- 性别:
- 来自: 杭州
最新评论
-
Reaper:
还是自己懒惰,期望合并代码讲解
关于FastHashMap -
lijunwyf41:
大并发的情况,建议用 ConcurrentHashMap 类
关于FastHashMap -
shiqicai:
但是这样的话,后面一系列有关性能的联系都没有办法做了啊!
SICP Exercise 1.22 遇到的问题 -
astarring:
可惜我《深入理解计算机系统》才刚开始看呀!而且我是学java的 ...
深入java虚拟机1-4章, all in sandbox(1) -
qchqz123:
BDB 在MySQL数据库中,BDB是一种事务安全型表类型。 ...
unix c语言环境下数据库开发-环境配置
文章列表
導演楊德昌是台灣新電影的重要旗手﹐也是屢奪國際大獎的世界知名大導。他的早期作品以冷靜內省的筆觸、寫實的風格﹐展現
了現代都市中的生活。在他時而冷靜時而聒噪的風格下﹐他的電影始終流露一種人文的關懷。
1983年 ...
- 2008-08-14 21:33
- 浏览 969
- 评论(0)
并发程序的可伸缩性主要是在保证程序安全同步,操作准确的前提下,保障程序在大量线程并发的情况下访问共享同步资源的效率.锁住某个共享的资源以获得独占式的访问这种做法会形成可伸缩性瓶颈――它使其他线程不能访问那 ...
今天看老大写的代码,发现在缓存对象的时候基本上都使用commons的FastHashMap.
google一下发现HashMap vs FastHashMap的文章,感觉很奇怪.
下班后download下来FastHashMap的代码看了一下
commons中FastHashMap类的doc写道:
java.util.HashMap类的一种自定义实现,以应付多线程环境中大量只读方法而非改变改变结构的方法的访问.
当以fast模式运行时,只读方法不是线程安全的,而写操作以下面的步骤进行操作
1 克隆当前的数据集合
2 在克隆对象上进行修改
3 用修改过的克隆对象替换原对象
当FastHas ...
线程状态
new新生,runnable可运行,blocked堵塞,dead死亡
线程堵塞的原因和恢复方式:
线程睡眠-睡眠结束,经过指定的毫秒数
i/o堵塞-i/o操作完成,
等待锁定-锁可用,等待的锁被其它线程释放或者等待超时
等待-通知,等待某个触发条件,当另外一个线程发出信号量表明条件已经发生变化。则回唤醒该线程进入可运行状态,重新判断等待条件
线程死亡的原因:
1 run方法正常退出导致正常死亡
2 未捕获的异常导致run方法意外终止而猝死
java.util.concurrent.locks包
Lock 是一个接口
ReentrantLock 可用来保护临界区的可重用锁
Ree ...
这个周末看过奥运会的开幕式后就开始java2 核心技术 卷II:高级特性。
因为最近做线程方面的开发,需要一些具有特殊特性的集合类,因此对上面那本书的内容做了一下整理,这些功能性集合类都是为了解决某一特点场景而提出的。
1 weekhashmap 弱散列映射表
映射表中存在除了该映射表本身已经不存在其他引用的键值对,我们无法移除该键值对。但是由于映射表还是存在引用,因此这个键值对会一直无法被垃圾回收器回收。会导致映射表的性能下降,很容易超出指定容量。
weekhashmap 使用弱引用来持有键,weakreference对象用于持有散列表键对象的引用。
垃圾回收器会对不拥有任何引用的对象进行垃圾 ...
近期开发一个处理WMA
文件的公用类库,发现最头疼的问题不是WMA编码格式的问题而是Unicode这种文件格式的问题.经过近两天的研究,终于解决了这一问题,并且在今天下午基本完成了WMA文件解析处理类库的开发.利用余下的一点时间 ...