1. AbortPolicy: 이 거부 전략은 작업을 거부할 때 RejectedExecutionException 유형의 RuntimeException을 직접 발생시킵니다.
2. 제출 후 바로 폐기할 수 없습니다. 알림을 보내면 데이터가 손실될 수 있는 특정 위험이 있습니다.
3. DiscardOldestPolicy: 새 작업이 제출되면 생존 시간이 가장 긴 작업이 삭제되며 데이터가 손실될 위험도 있습니다.
4. CallerRunsPolicy: 새 작업이 제출된 후 작업은 작업을 제출한 스레드에 제출됩니다. 즉, 작업을 제출한 사람이 작업에 대한 책임을 집니다. 이렇게 하면 두 가지 주요 이점이 있습니다.
첫째, 새로 제출된 과제는 포기되지 않으며 사업상의 손실을 초래하지 않습니다.
둘째, 태스크를 제출하는 사람이 태스크를 담당하기 때문에 태스크를 제출하는 경로가 태스크를 책임져야 하며, 태스크를 실행하는 데 시간이 걸립니다. 이 기간 동안 태스크를 제출하는 경로가 점유됩니다. 새 작업이 제출되지 않으면 작업 제출 속도가 느려지며 이는 부정적인 피드백과 동일합니다. 이 기간 동안 스레드 풀의 스레드는 이 시간을 최대한 활용하여 일부 작업을 수행하고 일정량의 공간을 확보할 수 있습니다. 이는 스레드 풀에 특정 버퍼 기간을 제공하는 것과 같습니다.
Java의 컬렉션은 주로 네 가지 범주로 나뉩니다.
1. 목록: 정렬됨, 반복 가능
3. 집합 컬렉션: 없음 -반복 가능;
4. 지도 매핑: 순서가 없고 고유한 키와 고유하지 않은 값이 있습니다.
위 내용은 Java 스레드 풀에 대한 거부 정책은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!