import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;
/**
* 类说明:演示Future等的使用
*/
public class UseFuture {
/*实现Callable接口,允许有返回值*/
private static class UserCallback implements Callable<Integer>{
@Override
public Integer call() throws Exception {
Integer result=0;
for (int i = 0; i < 10; i++) {
result+=i;
}
return result;
}
}
public static void main(String[] args) throws ExecutionException, InterruptedException {
UserCallback userCallback=new UserCallback();
FutureTask fu=new FutureTask(userCallback);
new Thread(fu).start();
System.out.println("线程结束了,result="+fu.get());
}
}
多线程开发,获取线程返回值的类 FutureTask和Callable
最新推荐文章于 2024-08-04 11:07:52 发布