사용자 도구

사이트 도구


java:collection

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
java:collection [2015/11/13 12:58]
kwon37xi
java:collection [2020/08/05 17:33] (현재)
kwon37xi
줄 1: 줄 1:
 ====== Java Collection ====== ====== Java Collection ======
 +  * [[http://www.eclipse.org/collections/|Eclipse Collections]]
 +  * [[https://www.baeldung.com/java-collection-remove-elements|Removing Elements from Java Collections | Baeldung]]
 +  * [[http://dveamer.github.io/backend/JavaConcurrentCollections.html|Java Thread Safe Collections - List, Queue, Set, Map]]
 +  * [[https://www.baeldung.com/java-synchronized-collections|An Introduction to Synchronized Java Collections | Baeldung]]
 +
 +
 ===== Set ===== ===== Set =====
 ==== Concurrent Set ==== ==== Concurrent Set ====
줄 6: 줄 12:
   * [[http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/collect/Sets.html#newConcurrentHashSet%28%29|com.google.common.collect.Sets#newConcurrentHashSet()]] : [[http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ConcurrentHashMap.html|ConcurrentHashMap]]을 이용해 동기화된 Set을 생성한다. 성능상 더 유리하다고 한다.<code java>   * [[http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/collect/Sets.html#newConcurrentHashSet%28%29|com.google.common.collect.Sets#newConcurrentHashSet()]] : [[http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ConcurrentHashMap.html|ConcurrentHashMap]]을 이용해 동기화된 Set을 생성한다. 성능상 더 유리하다고 한다.<code java>
 // 동기화된 Set 생성 원리 // 동기화된 Set 생성 원리
-ConcurrentHashMap<E, BooleanconcurrentHashMap = new ConcurrentHashMap<E, Boolean>()+Set<E> concurrentSet Collections.newSetFromMap(new ConcurrentHashMap<E, Boolean>());
-Set<E> concurrentSet = Collections.newSetFromMap(concurrentHashMap);+
 </code> </code>
 +
 +==== List ====
 +=== CopyOnWriteArrayList ===
 +  * [[https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/CopyOnWriteArrayList.html|CopyOnWriteArrayList]]
 +  * ''synchronized'' 없이 멀티 쓰레드에서 안전하게 작동하는 List.
 +  * iteration을 돌 때 가지고 있던 내용을 복제하여, 다른 쓰레드로 인한 변경 영향을 받지 않게 한다.
 +  * 성능이 떨어진다.
 +  * [[https://www.baeldung.com/java-copy-on-write-arraylist|Guide to CopyOnWriteArrayList | Baeldung]]
 +
 +
java/collection.1447388880.txt.gz · 마지막으로 수정됨: 2015/11/13 12:58 저자 kwon37xi