[java] 자바 배치 프로세싱에서의 작업 복제 방법은 어떻게 되는가?

작업을 복제하려면 ExecutorService 인터페이스 또는 ThreadPoolExecutor 클래스를 사용하여 실행 가능한 작업을 스케줄링할 수 있습니다. 다음은 스레드 풀을 생성하고 작업을 복제하는 간단한 예제 코드입니다.

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class BatchProcessing {
    public static void main(String[] args) {
        // 스레드 풀 생성
        ExecutorService executor = Executors.newFixedThreadPool(5);
        
        // 작업 복제
        for (int i = 0; i < 10; i++) {
            Runnable task = new BatchTask("Task " + i);
            executor.execute(task);
        }
        
        // 스레드 풀 종료
        executor.shutdown();
    }
}

class BatchTask implements Runnable {
    private String taskName;

    public BatchTask(String taskName) {
        this.taskName = taskName;
    }

    @Override
    public void run() {
        System.out.println("Processing task: " + taskName);
    }
}

위의 예제 코드에서는 ExecutorService를 사용하여 스레드 풀을 생성하고 병렬로 실행될 작업을 스케줄링합니다. 이를 통해 자바 배치 프로세싱에서의 작업 복제를 구현할 수 있습니다.

참고문헌: