배경. 배치를 만들던 도중에 Bean으로 등록해놓은 Thread Pool에 Thread가 꽉차서 Queue에 더 이상 Job이 들어갈 수 없다는 예외가 발생했습니다. 예를 들기 위해 테스트 코드를 하나 작성해보겠습니다. class ThreadPoolExecutorTest { @Test fun testThreadPoolQueueCapacity() { val executor = ThreadPoolExecutor( 2, // core pool size 2, // max pool size 0L, // keep alive time TimeUnit.MILLISECONDS, // time unit for keep alive time LinkedBlockingQueue(1) // queue with capacity 1..
Lombok이란? Lombok은 자바에서 제공해주는 라이브러리로 반복적인 코드인 Getter Setter 생성자등을 어노테이션을 기반으로 생성해주며 코드 가독성을 향상시켜줍니다. (물론 어노테이션이 떡칠된 Entity를 보면 적당히 쓰는것도 필요해보입니다.) 어떻게? Lombok은 컴파일 시점에 Annotation Processor를 사용하여 @Getter와 @Setter 같은 어노테이션이 붙은 소스를 읽어들이고 이를 기반으로 새로운 코드를 생성합니다. 순서를 보기 전 미리 알아둬야할 키워드가 있습니다. 추상 구문 트리 컴파일러는 소스 코드를 분석하고 문법에 맞지 않는 부분을 찾아내고 이를 수정하거나 오류를 보고하는데 이 과정에서 소스 코드를구문 분석할 때 생성되는게 추상 구문 트리입니다. 추상 구문 트..
- Total
- Today
- Yesterday
- JPA
- 백엔드
- 면접준비
- IT
- 코드
- 코딩
- 프로젝트
- 면접
- DevOps
- 취준
- swarm
- 동시성
- CS
- 게시판
- Spring
- 개발
- 취업준비
- MySQL
- 개발자
- 인터뷰
- Kotlin
- thread
- 면접 준비
- 프로그래밍
- 취업
- 자바
- DB
- java
- docker
- Redis
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |