如何让一个线程不断跑起来,并且在取到值的时候能返回值而线程能继续跑呢?
我们都知道可以用callable接口获得线程的返回值,或者触发事件监听来操作返回值,下面我将介绍另一种方法。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
public abstract class test implements runnable { public string a;
//开启线程 public void run() { while ( true ) { //此处写该方法的逻辑代码
//listen()方法操作取得值a listen(a);
}
}
//定义一个抽象方法listen() public abstract void listen(string a);
} |
这样,线程取到值将存放在抽象方法listen()里,并且线程也将一直跑起来而不会停止。
当我们需要用到这个值时,只需要重写listen()方法就可以啦。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
public class main { public static void main(string[] args) { thread thread = new thread( new test() {
@override public void listen(string a) { // todo auto-generated method stub
} }); thread.start(); } } |
以上就是本知识点的全部内容,感谢大家对的支持。
查看更多关于实现Java线程的取值并返回的方法的详细内容...