我在我的类中有一个内部类,在父类上进行一些异步处理和设置值。例如:简单多线程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()。 –
我不认为它会编译。 –
是的,我打算等待异步任务完成,然后打印出结果,但我不知道如何 –