摘要:转发:大海巨浪Java库本身就有多种线程安全的容器和同步工具,其中同步容器包括两部分:一个是Vector和Hashtable。另外还有JDK1.2中加入的同步包装类,这些类都是由Collections.synchronizedXXX工厂方法。同步容器都是线程安全的,但是对于复合操作,缺有些缺点:① ...
阅读全文
摘要:转载:大关的博客Java多线程阻塞队列和并发集合本章主要探讨在多线程程序中与集合相关的内容。在多线程程序中,如果使用普通集合往往会造成数据错误,甚至造成程序崩溃。Java为多线程专门提供了特有的线程安全的集合类,通过下面的学习,您需要掌握这些集合的特点是什么,底层实现如何、在何时使用等问题。3.1 ...
阅读全文
摘要:大家都知道,在Java里对对象的操作是基于引用的。而当我们需要对一组对象操作的时候,就需要有接收这一组引用的容器。平时我们最常用的就是数组。在Java里可以定义一个对象数组来完成许多操作。可是,数组长度是固定的,如果我们需要更加灵活的解决方案该怎么办呢?Java提供了container classe...
阅读全文
摘要:update1:第二个实现,读操作不必要采用独占锁,缓存显然是读多于写,读的时候一开始用独占锁是考虑到要递增计数和更新时间戳要加锁,不过这两个变量都是采用原子变量,因此也不必采用独占锁,修改为读写锁。update2:一个错误,老是写错关键字啊,LRUCache的maxCapacity应该声明为vol...
阅读全文
摘要:日期:2008-9-10测试平台:CPU:Intel Pentium(R) 4 CPU 3.06G内存:4G操作系统:window server 2003一、HashMap与ConcurrentHashMap简单put操作的时间对比1、HashMap测试A、程序代码:packagetest0908;...
阅读全文
摘要:ConcurrentHashMap原理分析分类:java学习2008-09-12 11:1210257人阅读评论(2)收藏举报hashmapiteratornull数据结构objectjdk集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程需要同时访问一...
阅读全文
摘要:/** *@author annegu *@date 2009-12-02 */Hashmap是一种非常常用的、应用广泛的数据类型,最近研究到相关的内容,就正好复习一下。网上关于hashmap的文章很多,但到底是自己学习的总结,就发出来跟大家一起分享,一起讨论。1、hashmap的数据结构要知道ha...
阅读全文
摘要:深入Java集合学习系列:HashMap的实现原理参考文献引用文献:深入Java集合学习系列:HashMap的实现原理,大部分参考这篇博客,只对其中进行稍微修改自己曾经写过的:Hashmap实现原理1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现(Hashtable跟...
阅读全文