0
我學習Java中的fork-join技術,寫了下面的程序。我正在運行for循環(5次),我想在單獨的線程中運行for循環的內容。這是正確的。問題是,當所有線程完成時,我想要一個大小爲5的向量,它必須包含在索引0處執行線程1的結果,在索引1處執行線程2的結果........ ....在索引4處執行線程5的結果。我乾淨地直觀地顯示了我想實現的內容,但不知道它的語法。的Java叉加入問題
目前,我會在我的向量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