-
Java中的线程安全的集合
Vector(可自动增长的array):线程安全版的ArrayList
HashTable:线程安全版的HashMap
Stack:继承自Vector,因此也是线程安全的 -
如何线程安全的访问集合?
-
什么是fail-fast机制?
* <p>The iterators returned by the {@code iterator} method of the collections
* returned by all of this class's "collection view methods" are
* <em>fail-fast</em>: if the map is structurally modified at any time after
* the iterator is created, in any way except through the iterator's own
* {@code remove} method, the iterator will throw a {@link
* ConcurrentModificationException}. Thus, in the face of concurrent
* modification, the iterator fails quickly and cleanly, rather than risking
* arbitrary, non-deterministic behavior at an undetermined time in the future.
即如果在使用iterator的过程中使用出iterator.remove方法之外集合发生了结构性的变化则抛出ConcurrentModificationException异常,此异常不能作为判断的依据,因为有很大的不确定性存在。
- 使用Concurrent包中的集合有什么好处?