반응형
1. 동기화된 컬렉션(Thread-Safe Collection)
- 자바에서 Collections의 synchronizedXXX() 메서드를 제공하여 멀티 쓰레드에 안전한 컬렉션을 쓸 수 있게 한다.
리턴 타입 | 메소드(매개변수) | 설명 |
List<t> | synchronizedList(List<t> list) | List를 동기화된 List로 리턴 |
Map<K,V> | synchronizedMap(Map<K,V> m) | Map을 동기화된 Map으로 리턴 |
Set<t> | synchronizedSet(Set<t> s) | Set을 동기화된 Set으로 리턴 |
2. 단점
- 하나의 쓰레드가 요소를 안전하게 처리하도록 도와주지만 전체 요소를 빠르게 처리하지 못한다. (작업시 락 발생)
3. 대안
- 자바에서 멀티쓰레드환경에서 안전하면서도, 쓰레드가 병렬적으로 작업을 처리할 수 있도록 기능을 제공한다.
Map<K,V> map = new ConcurrentHashMap<K,V>();
Queue<E> queue = new ConcurrentQueue<E>();
Queue<E> queue = new ConcurrentLinkedQueue<Object>();
반응형
'면접 - 자바' 카테고리의 다른 글
개발자 면접 질문 - Volatile 변수 (0) | 2020.12.03 |
---|---|
개발자 면접 질문 - Atomic, Volatile, Synchronized 차이 (0) | 2020.12.03 |
개발자 면접 질문 - 블로킹과 논블로킹 큐(Blocking Queue / Non Blocking Queue) 종류 (0) | 2020.12.03 |
개발자 면접 질문 - 클래스 로더(ClassLoader) (0) | 2020.12.03 |
개발자 면접 질문 - public static void main 의미 (0) | 2020.12.03 |