阅读背景:

JUC-FutureTask

来源:互联网 

得到别的线程义务的返回值

import lombok.extern.slf4j.Slf4j;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;

@Slf4j
public class FutureExample {
    static  class MyCallable implements Callable<String> {
        @Override
        public String call() throws Exception{
            log.info("do something in callable");
            Thread.sleep(500);
            return "Done";
        }
    }
    public static void main(String[] args) throws Exception{
        ExecutorService executorService= Executors.newCachedThreadPool();
        Future<String> future= executorService.submit(new MyCallable());//提交义务
        log.info("do something in main");
        Thread.sleep(1000);
        String result=future.get();
        log.info("result:{}",result);
    }
}
import lombok.extern.slf4j.Sl



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: