线程Callable接口用法
解决方法:
在默认情况下,继承Thread或者实现Runnable接口所创建的线程对象不具有返回结果的功能,如果在需要取得返回的结果的情况下是极为不方便的,但在并发包中可以Callable接口来使线程具有返回值的功能,还可以使用Future和线程池结合使用返回结果。
例子,统计1-100的和,并返回结果
1.线程类
import java.util.concurrent.Callable;
public class CallableDemo implements Callable<String> {
private int begin;
private int end;
private int sum;
public CallableDemo(int begin, int end) {
super();
this.begin = begin;
this.end = end;
}
public String call() throws Exception {
for(int i=begin;i<=end;i++){
sum+=i;
}
return begin+"-" +end+"的和:"+ sum;
}
}
2.测试方法
public static void main(String[] args) throws Exception {
CallableDemo callable = new CallableDemo(1,100);
String call = callable.call();
}
本文链接:http://www.yayihouse.com/yayishuwu/chapter/1541