JDK内部提供了大量的API和框架,这里主要介绍三部分 多线程同步控制方法 线程池,提高线程调度的性能 JDK的并发容器 重入锁:java.util.concurrent.locks.ReenterLock 在代码中,类ReenterLock实现了Runnable,其中有static的变量i,在ru... ...
分类:
编程语言 时间:
2016-09-28 01:19:55
阅读次数:
315
在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。 在前面我们接触的队列都是非阻塞队列,比如 ...
分类:
编程语言 时间:
2016-09-20 12:00:04
阅读次数:
258
Java并发编程:阻塞队列 在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。 在前面我们接 ...
分类:
编程语言 时间:
2016-09-06 11:59:21
阅读次数:
255
Java并发编程:并发容器之ConcurrentHashMap(转载) 下面这部分内容转载自: http://www.haogongju.net/art/2350374 JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能。因为同步容器将所有对容器状态的访 ...
分类:
编程语言 时间:
2016-09-06 10:30:24
阅读次数:
231
“ConcurrentHashMap是一个线程安全的哈希表“,但是不允许key和value为空; HashTable和ConcurrentHashMap都是线程安全的,但是HashTable是同步容器,ConcurrentHashMap是并发容器,采用了锁分离策略,在并发环境中,应多使 用Concu ...
分类:
编程语言 时间:
2016-08-27 23:29:56
阅读次数:
213
Java并发编程:阻塞队列 在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。 在前面我们接 ...
分类:
编程语言 时间:
2016-07-29 17:08:38
阅读次数:
217
设计线程安全类的过程中需要注意三个基本要素:
1、找出构成对象的所有变量
2、找出约束状态变量的不变性条件
3、建立对象状态的并发访问管理策略
Java5.0提供了多种并发容器来改进同步容器的性能。同步容器将所有对容器状态访问都串行化,以实现它们的线程安全,这种方法的代价是严重降低了并发性。当多个线程竞争容器锁时,吞吐量将严重降低。
通过并发容器代替同步容器,可以极大的提高伸缩性,降低风险。...
分类:
编程语言 时间:
2016-07-10 21:54:20
阅读次数:
218
多线程 使用 使用并发容器CopyOnWriteArrayList ...
分类:
其他好文 时间:
2016-07-05 20:34:02
阅读次数:
144
在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。 在前面我们接触的队列都是非阻塞队列,比如 ...
分类:
编程语言 时间:
2016-07-01 10:14:43
阅读次数:
289
为了方便编写出线程安全的程序,Java里面提供了一些线程安全类和并发工具,比如:同步容器、并发容器、阻塞队列、Synchronizer。 同时说说List,Set,Map之间的区别. 自动扩展的数组: List 重复的数组:set 自动排序的组数 :TreeSet,TreeList,Tree** 而 ...
分类:
编程语言 时间:
2016-06-29 20:44:50
阅读次数:
270