0
자바에서 포크 - 조인 기술을 배우고 다음 프로그램을 작성했습니다. 나는 for 루프 (5 번)를 실행 중이며 for 루프의 내용을 별도의 스레드로 실행하려고합니다. 이것은 올바르게 일어나고 있습니다. 문제는 모든 스레드가 완료되면 크기 5의 벡터가 필요하며 인덱스 1에 스레드 1을 실행 한 결과를 포함해야하며 인덱스 1에 스레드 2를 실행 한 결과가 포함되어야합니다. .... 인덱스 5에서 스레드 5의 실행 결과. 나는 달성하고자하는 것을 깔끔하게 시각화하지만 구문을 알지 못합니다.자바 포크 참여 문제
현재 내 벡터에 1 개의 숫자가 있습니다.
import java.util.Random;
import java.util.Vector;
import java.util.concurrent.*;
public class App {
public static void main(String[] args) {
// TODO Auto-generated method stub
ExecutorService executor = Executors.newCachedThreadPool();
Future<Vector<Integer> > futureResult = null;
for(int i = 0; i < 5; i++){
futureResult = executor.submit(new Callable<Vector<Integer> >(){
@Override
public Vector<Integer> call() throws Exception {
Random random = new Random();
int duration = random.nextInt(4000);
Vector<Integer> v = new Vector<Integer>();
v.add(duration);
return v;
}
});
}
executor.shutdown();
try {
System.out.println(futureResult.get());
} catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
}
}
}
감사합니다. buuuuuuudy가이 문제를 해결하도록하겠습니다 ... – VVV
고맙다 친구, 내 문제를 해결했습니다. – VVV