BlockingQueue 연산 계약 행렬
같은 삽입과 제거라도 불가능한 순간을 표현하는 방식이 다르다.
| 정책 | 삽입 | 제거 | 실패 표현 |
|---|---|---|---|
| 예외 | add | remove | 즉시 예외 |
| 특수값 | offer | poll | false 또는 null |
| 무기한 대기 | put | take | 인터럽트까지 대기 |
| 제한 시간 | timed offer | timed poll | 시간 뒤 특수값 |
핵심: 호출자의 시간 예산과 실패 빈도가 연산 계열 선택을 결정한다.
같은 삽입과 제거라도 불가능한 순간을 표현하는 방식이 다르다.
| 정책 | 삽입 | 제거 | 실패 표현 |
|---|---|---|---|
| 예외 | add | remove | 즉시 예외 |
| 특수값 | offer | poll | false 또는 null |
| 무기한 대기 | put | take | 인터럽트까지 대기 |
| 제한 시간 | timed offer | timed poll | 시간 뒤 특수값 |
핵심: 호출자의 시간 예산과 실패 빈도가 연산 계열 선택을 결정한다.