Callable实现由返回值的线程

1、如果有一个很耗时的返回值要去计算,并且这个返回值不需要马上需要,可以用另一个线程去计算返回值。

public class MyCallable1 implements Callable<Integer> {

    @Override
    public Integer call() throws Exception {
        return new Random().nextInt(100);
    }
}

public class MyCallable1Test {
    @Test
    public void contextLoads() throws ParseException, ExecutionException, InterruptedException {
        MyCallable1 myCallable1 = new MyCallable1();
        FutureTask<Integer> ft = new FutureTask<>(myCallable1);
        new Thread(ft).start();
        // 可能做一些其他操作
        System.out.println("子线程的返回值:" + ft.get());

    }

}

上一篇:java三种线程的创建方式


下一篇:《HTML5 开发实例大全》——1.14 使用< meter >标记元素实现百分比效果