2013-11-04 25 views
-4

我有點功課,並希望有一點幫助。我試圖讓我的電腦一次同時計算5個數字。我知道我應該使用線程,但不確定實現這一點的最佳方式。在Java中的併發計算

對不起,這裏沒有發佈代碼是我到目前爲止。

主營:

package CoddingEx; 

public class Main 
{ 
    public static void main(String args[]) { 
     (new Thread1()).start(); 
     (new Thread2()).start(); 
    } 
} 

線程1:

package CoddingEx; 
public class Thread1 extends Thread { 

    public void run() { 
     int answer = 0; 
     int input = 5; 

     answer = input*5; 
     System.out.println("Value of calculation 1: " + answer); 
    } 

} 

線程2:

package CoddingEx; 

public class Thread2 extends Thread { 

    public void run() { 
     int answer = 0; 
     int input = 5; 

     answer = input/5; 
     System.out.println("Value of calculation 2: " + answer); 
    } 

} 

這是第2次計算,要與這兩個堅持,直到我肯定這是做到這一點的正確方法。我的目標是讓所有線程同時計算並完成。

感謝

+0

具有u嘗試新鮮事物? –

+0

您是否閱讀過關於併發和線程的章節? – haraldK

+0

[此鏈接](http://arashmd.blogspot.com/2013/07/java-thread-example.html#ai)可能會幫助好友:) – 2013-11-04 12:08:20

回答

1

您需要創建它接受的數字加在一起的自定義主題。在run()中,您可以添加並在某處存儲總和。

由於您需要五個線程,因此您需要創建該線程的五個實例並在其上調用start()

+2

爲什麼?爲什麼線程? Callable's更好,它是類固醇上的Runnable(可以返回任何你想要的,即結果)。 –

+0

我還沒用過callable。需要研究它 –