new Fixed ThreadPool 기반 다 중 스 레 드 사례 구현
package com.hao.thread;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
public class ThreadTest {
public static void main(String[] args) {
long start = System.currentTimeMillis();
System.out.println(action());
long end = System.currentTimeMillis();
System.out.println(end - start);
}
public static List<String> action() {
List<String> list = new ArrayList<String>();
ExecutorService pool = Executors.newFixedThreadPool(3);
Future<String> submit1 = pool.submit(() -> action1("action1"));
Future<String> submit2 = pool.submit(() -> action2("action2"));
Future<String> submit3 = pool.submit(() -> action3("action3"));
try {
list.add(submit1.get());
list.add(submit2.get());
list.add(submit3.get());
} catch (Exception e) {
e.printStackTrace();
} finally {
pool.shutdown();
}
return list;
}
private static String action1(String action1) {
sleep(5000);
return action1 + " # " + Thread.currentThread().getName();
}
private static String action2(String action2) {
sleep(5000);
return action2 + " # " + Thread.currentThread().getName();
}
private static String action3(String action3) {
sleep(5000);
return action3 + " # " + Thread.currentThread().getName();
}
private static void sleep(long millis) {
try {
Thread.sleep(millis);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
2.처리 결과이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
📋 모던 자바스크립트 Deep Dive | 17장 생성자 함수에 의한 객체 생성new 연산자와 Object 생성자 함수를 호출하면 빈 객체를 생성해서 반환한다. 생성자 함수란 new 연산자와 함께 호출하여 객체를 생성하는 함수를 말한다. 마치 객체(인스턴스)를 생성하기 위한 템플릿(클래스)처럼...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.