1. BlockingQueue
- Queue가 꽉 찼을 때의 삽입 시도 / 비어 있을 때의 추출 시도를 막는다
- 구현체 모두 Thread-safe 하다
1) ArrayBlockingQueue
- 고정 배열에 일반적인 Queue를 구현한 클래스
- 생성 후 크기 변경 불가
2) LinkedBlockingQueue
- 선택적으로 Bound가 가능한 LinkedList로 구현한 Queue
3) PriorityBlockingQueue
- PriorityQueue와 같은 정렬 방식을 지니는 용량 제한이 없는 Queue
4) SynchrousQueue
- Queue 내부로의 insert 작업이 다른 쓰레드의 remove 작업과 반드시 동시에 일어나야 한다.
2. Non Blocking Queue
1) ConcurrentLinkedQueue
- 큐에 꺼낼 원소가 없으면 즉시 리턴하고 다른 일을 수행한다.
'CS > 자료구조 & 알고리즘' 카테고리의 다른 글
논 블로킹 알고리즘 (Non-blocking Algorithms) (1) | 2025.02.16 |
---|---|
최장 증가 수열 (LIS, Longest Increasing Subsquence) (0) | 2024.11.08 |
RIP, OSPF, BGP 장단점 (0) | 2024.09.24 |
라우팅 알고리즘 (0) | 2024.09.24 |
암호화 알고리즘 (0) | 2024.08.28 |