![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
文章平均质量分 95
celong
这个作者很懒,什么都没留下…
展开
-
并发集合类 ConcurrentHashMap 和 CopyOnWriteArrayList(转)
在Java类库中出现的第一个关联的集合类是 Hashtable ,它是JDK 1.0的一部分。 Hashtable 提供了一种易于使用的、线程安全的、关联的map功能,这当然也是方便的。然而,线程安全性是凭代价换来的―― Hashtable 的所有方法都是同步的。此时,无竞争的同步会导致可观的性能代价。 Hashtable 的后继者 HashMap ...原创 2010-08-10 19:25:25 · 57 阅读 · 0 评论 -
多线程开发注意事项
设计线程安全的类需要 考虑哪些因素? 1) 找出哪些变量 属于对象的状态 2) 找出哪些不变量 属于对象的状态 3) 使用合适的并发策略来管理对状态的访问考虑线程安全的需求 1) 同步范围多大? 整个方法? 一个大块? 小块? 2) 有哪些限制和先决条件? java内建的监视器模型, 通过锁定, 即在锁对象添加监视器, 一旦锁定释放, 监视器通知其他等待的线程....原创 2010-08-10 19:39:27 · 134 阅读 · 0 评论 -
集合类(Collection) List/Set/Map... 的区别和联系
关键字: 集合类 Collection :List、SetMap :HashMap、 HashTable 如何在它们之间选择 一、Array , Arrays Java所有“存储及随机访问一连串对象”的做法,array是最有效率的一种。 1、 效率高,但容量固定且无法动态改变。 array还有一个缺点是,无法判断其中实际存有多少元 素,len...原创 2010-08-11 09:55:42 · 218 阅读 · 0 评论 -
Java线程:线程状态的转换
转自:http://lavasoft.blog.51cto.com/62575/99153 Java线程:线程状态的转换 SCJP5学习笔记 一、线程状态 线程的状态转换是线程控制的基础。线程状态总的可分为五大状态:分别是生、死、可运行、运行、等待/阻塞。用一个图来描述如下: 1、新状态:线程对象已经创建,还没有在其上调用star...原创 2010-08-25 19:44:45 · 90 阅读 · 0 评论 -
一个关于Java Thread wait(),notify()的实用例
///// // ProducerConsumer.java // // @author 叶雨 // // 这是个很重要的Thread例子。需要注意的是: // wait() 必须在synchronized 函数或者代码块里面 // wait()会让已经获得synchronized 函数或者代码块控制权的Thread暂时休息,并且丧失控制权 // 这个时候,由于该线程丧失...原创 2010-08-25 20:46:56 · 94 阅读 · 0 评论 -
list map set及所有子类 区别与使用总结
括号为是否线程安全 list: LinkedList(no) ArrayList(no) Vector(yes) Stack(yes) map: HashMap(no) LinkedHashMap(no) HashTable(yes) WeakHashMap TreeMap set: HashSet(no) LinkedHashSet(no) SortedSet TreeSet ...原创 2010-08-25 20:51:57 · 208 阅读 · 0 评论