Spring boot使用@Async实现异步任务

在对应需要执行异步任务的方法上加上@Async
在Spring Boot的主程序中配置@EnableAsync

注: @Async所修饰的函数不要定义为static类型,这样异步调用不会生效

使用Future来返回异步调用的结果.

@Async
public Future doTaskOne() throws Exception {
    System.out.println("开始做任务一");
    long start = System.currentTimeMillis();
    Thread.sleep(random.nextInt(10000));
    long end = System.currentTimeMillis();
    System.out.println("完成任务一,耗时:" + (end - start) + "毫秒");
    return new AsyncResult<>("任务一完成");
}

你可能感兴趣的:(Spring boot使用@Async实现异步任务)