2010-11-17 129 views
-2

我如何給輸入線程在JavaJava線程(多線程)

如:

class BTT extends Threads 
{ 
    int ag1; 
    int ag2; 

    void build(int k) 
    { 
    void build(k+1); 
    } 
} 

我想設置的AG1和K值在構建在不同的線程不同。我怎樣才能做到這一點?

+0

請您詳細說明一下嗎?另外,請格式化代碼,以使其易於理解。 – Sid 2010-11-17 03:58:57

+0

確實我認爲這是一個很好的系統,可以吸引開發者的自我,鼓勵他們在回答^^時獲得獎勵,但我認爲它不應該阻止幫助。 – 2010-11-17 04:00:36

+0

http://meta.stackexchange.com/questions/66773/should-mods-delete-work-on-that-accept-rate-comments – andersoj 2010-11-17 04:03:16

回答

0

以及當你創建你的線程,你可以做這樣的事情

MyThread mt = new MyThread(agr1, arg2); 

mt.setValue(k); 

但Java線程通常使用的Runnable http://www.javabeginner.com/learn-java/java-threads-tutorial

在這種情況下,你可以做同樣的

MyRunnable mr = new MyRunnable(arg1,arg2); 
mr.setValue(k); 

new Thread(mr).start(); 

賈森

+0

請檢查程序http://pastebin.com/wdsAxEQ6。如果我不使用線程,則count的值爲1705,但是如果我使用線程,則count的值大於1705.有沒有可以讓兩個線程共享int計數的地方?我在程序中做錯了什麼? – sandeep 2010-11-17 19:59:58

1

you tre在你的線程類中作爲一個簡單的POJO(Java對象),它可以有多個值,我不認爲應該有這麼大的問題。

你可以使用類似下面的代碼。

public class P1 extends Thread { 

    private int age; 

    public P1(int age) { 
     this.age = age; 
    } 

    public void run() { 
     System.out.println(this.age); 
    } 
    public static void main(String[] args) { 
     P1 p1 = new P1(1); 
     p1.start(); 
    } 
} 
+0

請檢查程序http://pastebin.com/wdsAxEQ6。如果我不使用線程,則count的值爲1705,但是如果我使用線程,則count的值大於1705.有沒有可以讓兩個線程共享int計數的地方?我在程序中做錯了什麼? – sandeep 2010-11-17 19:56:25