synchronization container (not thread-safe for iterative read and write under concurrency)
- Classes created by static factory methods of the collections class (such as Collections.synchronizedlist)
- Implemented synchronously with all public methods of the container plus synchronzied (poor performance in concurrency)
JDK 1.5 new concurrent container (thread safe)
- Concurrenthashmap (instead of map, internal use of segment structure, two times to locate the hash, write only to segment locking)
- Copyonwritearraylist (Copyonwrite writes a new copy, modifies it on the new one, and then points the reference to the new. Can only achieve the final consistency of the data, not real-time consistent, instead of list, for the reading operation of the main case)
- Concurrentlinkedqueue (the difference between a queue and a list is that the queue can only manipulate data in the header and tail pairs)
- Priorityqueue (non-concurrent)
- The two most common concurrent containers are concurrenthashmap and copyonwritearraylist
Reference: http://blog.csdn.net/basycia/article/details/52059732
Java synchronization containers and concurrent containers