spring boot 다 중 스 레 드 구현
설정 클래스 가 비동기 지원 을 시작 하려 면 @ EnableAsync 주 해 를 추가 해 야 합 니 다.
인터페이스 AsyncConfigurator 를 설정 하고 ThreadPoolTaskExecutor 스 레 드 풀 대상 을 되 돌려 줍 니 다.
최소 스 레 드 수, 최대 스 레 드 수, 대기 열 설정
@ComponentScan("com.lgh.service") service
@Configuration
//
@EnableAsync
public class AsyncTaskConfig implements AsyncConfigurer {
@Override
public Executor getAsyncExecutor() {
ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor();
taskExecutor.setCorePoolSize(5);//
taskExecutor.setMaxPoolSize(10);//
taskExecutor.setQueueCapacity(25);//
taskExecutor.initialize();
return taskExecutor;
}
@Override
public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() {
return null;
}
}
ThredPoolTaskExcutor 의 처리 프로 세 스 는 현재 스 레 드 탱크 크기 가 corePoolSize (최소 스 레 드 수) 보다 작 으 면 새로운 스 레 드 를 만 들 고 요청 을 처리 합 니 다. 전선 스 레 드 탱크 크기 가 corePoolSize 와 같 으 면 요청 을 워 크 큐 에 넣 습 니 다. 스 레 드 탱크 의 빈 스 레 드 는 워 크 큐 에서 작업 을 가 져 오고 워 크 큐 가 작업 을 놓 지 못 할 때 새 스 레 드 를 풀 에 넣 습 니 다.또한 요청 을 처리 합 니 다. 만약 에 연못 의 크기 가 maximum PoolSize (최대 스 레 드 수) 에 이 르 렀 다 면 Rejected Execution Handler 로 처리 거부 합 니 다. 연못 의 스 레 드 수가 core PoolSize 보다 많 을 때 남 은 스 레 드 는 keepAlive Time 을 오래 기다 리 고 요청 이 없 으 면 다 중 스 레 드 @ Async 주 해 를 스스로 취소 합 니 다. 이 를 비동기 로 표시 합 니 다. 클래스 에 추가 할 수 있 습 니 다.이러한 방법 이 모두 비동기 적 인 방법 임 을 나타 내 고 방법 에 덧 붙 여 이 방법 이 비동기 적 인 방법 임 을 나타 낸다.
@Async
public void executeAsyncTask(Integer i){
System.out.println(" :" + i);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
thymeleaf로 HTML 페이지를 동적으로 만듭니다 (spring + gradle)지난번에는 에서 화면에 HTML을 표시했습니다. 이번에는 화면을 동적으로 움직여보고 싶기 때문에 입력한 문자를 화면에 표시시키고 싶습니다. 초보자의 비망록이므로 이상한 점 등 있으면 지적 받을 수 있으면 기쁩니다! ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.