Spring实现多线程

我们过去实现多线程的方式通常是继承 Thread类或者实现Runnable 接口,这种方式实现起来比较麻烦。spring封装了Java的多线程的实现,你只需要关注于并发事物的流程以及一些并发负载量等特性。spring通过任务执行器TaskExecutor来实现多线程与并发编程。通常使用ThreadPoolTaskExecutor来实现一个基于线程池的TaskExecutor.

开启线程池

首先你要实现 AsyncConfigurer这个接口,目的是开启一个线程池 ,这个步骤我们可以基于spring的配置文件实现,修改applicationContext-timer.xml文件,代码如下



  
  
  
  
  
    
    
    
    
    
    
    
    
    
    
       
    
  

异步执行声明

然后注入一个类,实现你的业务,并在你的Bean的方法中使用@Async注解来声明其是一个异步任务,如:

/***
  * 多线程下单操作
  */
  @Async
  public void createOrder(){
    try {
      System.out.println("准备执行....");
      Thread.sleep(20000);
       System.out.println("开始执行....");
   } catch (InterruptedException e) {
      e.printStackTrace();
   }
 }

你可能感兴趣的:(Spring实现多线程)