我在我的類中有一個內部類,在父類上進行一些異步處理和設置值。例如:簡單多線程java
class Myclass{
String test;
public getTestValueFromMyClass(){
//this starts asynchronous processing on my inner class
}
//inner class
class InnerClass extends TimerTask{
//doing something asynchronously, when this process is done
test = "somevalue";
}
}
現在,這裏是亞軍類問題:
class Runner{
public static void main(String[] args){
Myclass instance = new Myclass();
//This is always null because runner class doesn't wait for Inner class to
//complete asynchronous processing and to set test value
System.out.println(instance.getTestValueFromMyClass());
}
}
如何解決此得到什麼?
由於您似乎沒有同時做任何事情,我只會使用一個線程。如果你想等待異步任務,我建議你使用ExecutorService和Future.get()。 –
我不認爲它會編譯。 –
是的,我打算等待異步任務完成,然後打印出結果,但我不知道如何 –