zoukankan      html  css  js  c++  java
  • java spring boot 异步方法@Async

    java spring boot 异步方法@Async

    ps:我这里要说明下 这个异步是多线程 所以要考虑线程安全 变量共享的问题

    1 首先开启类 

    @EnableAsync //开启异步调用



    2 直接方法前面加
    @Async 就可以异步了
    package com.example.demo2122;
    import org.springframework.scheduling.annotation.Async;
    import org.springframework.scheduling.annotation.Scheduled;
    import org.springframework.stereotype.Component;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    import javax.annotation.Resource;
    
    import java.util.*;
    import java.util.stream.IntStream;
    
    import org.springframework.scheduling.annotation.Async;
    import org.springframework.stereotype.Service;
    
    @RestController
    @Component
    public class HelloControl {
    
        @GetMapping("/hello")
        public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
            System.out.println("####IndexController####   1");
            this.sendSms();
            System.out.println("####IndexController####   3");
            return "success";
        }
    
    
    
        @Async
        public void sendSms(){
            Timer timer = new Timer();
            timer.schedule(new RemindTask(), 3*1000);
        }
    
    }
    class RemindTask extends TimerTask {
        public void run() {
            System.out.println("3秒后执行sendSms");
    
        }
    }
  • 相关阅读:
    Hashtable源码分析
    ConcurrentHashMap1.7源码分析
    JDK1.8新特性
    回炉Spring--Bean生命周期及AOP
    @DateTimeFormat 和 @JsonFormat 注解
    面向切面编程-日志切面应用及MDC使用
    maven 多模块开发
    maven 安装
    ztree树节点重叠问题
    Java问题解读系列之IO相关---Java深拷贝和浅拷贝
  • 原文地址:https://www.cnblogs.com/newmiracle/p/12750788.html
Copyright © 2011-2022 走看看