>  기사  >  Java  >  자바 스레드 풀이란 무엇입니까?

자바 스레드 풀이란 무엇입니까?

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼원래의
2019-11-13 09:23:262357검색

자바 스레드 풀이란 무엇입니까?

스레드 풀을 사용하면 시스템 리소스 비용 절감, 스레드 생성 및 소멸 시간 절약 등 많은 이점이 있습니다. 많은 작업을 처리해야 할 때 스레드 풀을 사용할 수 있습니다. 많은 사용자가 Java 스레드 풀을 사용하는 방법을 모르고 있을 수 있습니다. 오늘은 Java에서 4가지 스레드 풀을 사용하는 방법을 공유하겠습니다.

스레드 풀 소개:

스레드 풀은 처리 중에 작업을 대기열에 추가하고 스레드가 생성된 후 자동으로 이러한 작업을 시작하는 멀티 스레드 처리의 한 형태입니다. 스레드 풀 스레드는 백그라운드 스레드입니다. 각 스레드는 기본 스택 크기를 사용하고 기본 우선 순위로 실행되며 다중 스레드 아파트에 있습니다. 스레드가 관리 코드에서 유휴 상태인 경우(예: 이벤트 대기) 스레드 풀은 다른 작업자 스레드를 삽입하여 모든 프로세서를 바쁜 상태로 유지합니다. 모든 스레드 풀 스레드가 항상 사용 중이지만 대기열에 보류 중인 작업이 포함된 경우 스레드 풀은 잠시 후 다른 작업자 스레드를 생성하지만 스레드 수가 최대값을 초과하지 않습니다. 최대값을 초과하는 스레드는 큐에 들어갈 수 있지만 다른 스레드가 완료될 때까지 시작되지 않습니다.

4개의 Java 스레드 풀 사용:

Java는 Executor를 통해 다음과 같은 4개의 스레드 풀을 제공합니다.

newCachedThreadPool은 스레드 풀 길이가 처리 요구 사항을 초과하는 경우 캐시 가능한 스레드 풀을 생성합니다. , 재활용할 수 있는 방법이 없다면 새 스레드를 생성하세요.

newFixedThreadPool은 최대 동시 스레드 수를 제어할 수 있는 고정 길이 스레드 풀을 생성합니다. 초과 스레드는 대기열에서 대기합니다.

newScheduledThreadPool은 예약되고 주기적인 작업 실행을 지원하기 위해 고정 길이 스레드 풀을 생성합니다.

newSingleThreadExecutor는 고유한 작업자 스레드만 사용하여 작업을 실행하는 단일 스레드 스레드 풀을 생성하여 모든 작업이 지정된 순서(FIFO, LIFO, 우선 순위)로 실행되도록 보장합니다.

PHP 중국어 웹사이트에 있는 많은 java 교육 비디오, 온라인 학습을 환영합니다!

위 내용은 자바 스레드 풀이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.