/** * SumThread * * split data mong multiple threads to sum up * combine results from all threads */ public class SumThread extends Thread { private static double[] shared; private int id; private int startIndex, endIndex; private double sum; public SumThread(int id, int i, int j) { this.id = id; startIndex = i; endIndex = j; } public void run() { sum = 0; for (int i = startIndex; i <= endIndex; ++i) { sum += shared[i]; } System.out.printf("id: %d, i=%d, j=%d, sum=%f\n", id, startIndex, endIndex, sum); } public static void main(String[] args) { // TODO Auto-generated method stub } }