일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Real MySQL
- Kotlin
- K8s
- 스프링
- thread
- 토비의 스프링
- Java
- 토비의 스프링 정리
- 이스티오
- JPA
- list
- 쿠버네티스
- spring
- GC
- Stream
- IntellJ
- 보조스트림
- MSA
- 자바
- Stack
- Collection
- jvm
- SpringBoot
- 스트림
- gradle
- mysql
- OS
- redis
- 백준
- 자바 ORM 표준 JPA 프로그래밍
Archives
- Today
- Total
목록Blocking Queues (1)
인생을 코딩하다.
[Java]블로킹 큐(Blocking Queues)
블로킹 큐(Blocking Queues) 특정 상황에 쓰레드를 대기하도록 하는 큐이다. 큐에서 element를 빼려고 시도했는데(디큐) 큐가 비어있다거나, 큐에 엘레멘트를 넣으려 했는데(인큐) 큐에 넣을 수 있는 공간이 없다거나 할 때 디큐/인큐 호출 쓰레드를 대기하도록 한다. 비어있는 큐에서 엘레멘트를 빼려고 시도하는 쓰레드의 대기 상태는 다른 쓰레드가 이 큐에 element를 넣을 때까지 지속된다. 꽉 찬 큐에 element를 넣으려 시도하는 쓰레드의 대기 상태는 다른 쓰레드가 큐에서 element를 빼거나 큐를 정리하여(clean) 큐의 공간이 확보될 때까지 지속된다. 블로킹 큐는 put과 take라는 핵심 메소드를 갖고 있고, 더불어 offer와 poll이라는 메소드도 갖고 있다. 만약 큐가 가득..
Java
2021. 3. 28. 01:16