`
y806839048
  • 浏览: 1091448 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

spring对多线程支持,@EnableAsync@Async

阅读更多

EnableAsync注解的意思是可以异步执行,就是开启多线程的意思。可以标注在方法、类上。(相当于主线程中new thread().start())---用注解的方式 开启新的线程(多线程的另一种开启方法)

springboot线程池的配置和多线程方式的注解启动(配好了多线程自后,需要另起线程的方法上用相应的注解即可开启一个新的线程,然后继续原来的线程)

 

使用多线程


@Component
public class Task {

    @Async
    public void doTaskOne() throws Exception {
        // 同上内容,省略
    }

    @Async
    public void doTaskTwo() throws Exception {
        // 同上内容,省略
    }

    @Async
    public void doTaskThree() throws Exception {
        // 同上内容,省略
    }

}



为了让@Async注解能够生效,还需要在Spring Boot的主程序中配置@EnableAsync,如下所示:或者配置类上开启多线程)(不一定是springboot,spring4即可用)

@SpringBootApplication
@EnableAsync
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

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

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics