`

使用spring的@Async异步执行方法

 
阅读更多
http://my.oschina.net/jgy/blog/550673
应用场景:

1、某些耗时较长的而用户不需要等待该方法的处理结果
2、某些耗时较长的方法,后面的程序不需要用到这个方法的处理结果时


一些需要注意的说明:
spring 配置异步要点 @Async  http://ydlmlh.iteye.com/blog/2062788


在spring的配置文件中加入对异步执行的支持
    <!-- 支持异步方法执行 -->
    <task:annotation-driven />

使用方法
import org.springframework.scheduling.annotation.Async;
 
public class Test {
     
    @Async
    public static void testAsyncMethod(){
        try {
            //让程序暂停100秒,模拟执行一个很耗时的任务
            Thread.sleep(100000);
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

调用方法
public static void main(String[] args) {
    Test.testAsyncMethod();
    System.out.println("我已经执行了!");
}
分享到:
评论

相关推荐

    Spring @async方法如何添加注解实现异步调用

    Spring 中使用 @Async 注解时,Spring 会扫描方法上是否包含 @Async 注解,如果包含的,Spring 会为该 Bean 动态生成一个代理类,代理类是继承我们所写的 Bean 的,然后把代理类注入进来,那此时,在执行此方法的...

    JAVA 中Spring的@Async用法总结

    这种方式可以返回一个 Future 对象,其中包含了异步执行的结果。需要注意的是,返回的数据类型为 Future 类型,其为一个接口。具体的结果类型为 AsyncResult,這個是需要注意的地方。 调用返回结果的异步方法 可以...

    Spring中@Async注解执行异步任务的方法

    这样,当我们调用这个方法时,Spring会将其异步执行,而不是阻塞主线程。 @Async注解是Spring提供的一个强大工具,可以帮助我们提高系统的性能和响应速度。在实际项目中,使用@Async注解可以使得系统更加高效和可靠...

    springboot中@Async异步调用注解的使用

    它可以在方法级别上使用,标记该方法为异步执行。 - 异步方法不会阻塞当前执行线程,而是立即返回,并在后台线程中执行实际的方法逻辑。 2. **配置异步支持** - 在Spring Boot应用中,需要启用异步支持。这通常...

    Spring Boot @Async 异步任务执行方法

    在上面的例子中,sayHello() 方法调用 sayHi() 方法时,sayHi() 方法不会异步执行。这是因为代理模式只能拦截代理的调用,而不能拦截同一个类中的方法调用。 Spring Boot @Async 异步任务执行方法提供了一种简单的...

    Spring Boot利用@Async如何实现异步调用:自定义线程池

    在Spring Boot中,使用@Async注解可以将方法异步执行。@Async注解可以应用于方法上,使得该方法可以异步执行。例如: ```java @Async public void doTask() { // 异步执行的任务 } ``` 在上面的代码中,doTask()...

    关于Spring注解@Async引发其他注解失效的解决

    Spring 框架提供了多种注解来帮助开发者简化代码,例如 @Async 用于异步执行方法、@Transaction 用于事务管理等。但是,在使用这些注解时,可能会遇到一些问题,例如 @Async 注解引发其他注解失效的问题。 在文章中...

    简述Springboot @Async 异步方法

    Spring Boot @Async 异步方法是 Spring Boot 框架中的一种异步编程方式,允许开发者在不阻塞主线程的情况下执行高耗时方法。下面将详细介绍 Spring Boot @Async 异步方法的使用和原理。 什么是异步调用 异步调用是...

    spring boot中使用@Async实现异步调用任务

    2. 在需要异步执行的方法上添加`@Async`注解: ```java @Component public class Task1 { // ... (其他代码保持不变) @Async public void doTaskOne() throws Exception { // ... } @Async public void ...

    Spring Boot利用@Async异步调用:使用Future及定义超时详解

    `@Async`是Spring提供的一个注解,用于标记一个方法为异步执行。当一个带有`@Async`的方法被调用时,Spring会创建一个新的线程来执行该方法,从而避免阻塞当前请求处理线程。这样,主线程可以继续处理其他任务,提高...

    @scheduled任务调度使用详解及@scheduled与多线程和@Async异步任务结合使用

    本篇文章将深入讲解`@Scheduled`的使用方法,以及如何将其与多线程和`@Async`异步任务相结合,提升应用程序的效率。 ### `@Scheduled`任务调度 `@Scheduled`是Spring Framework中的一个注解,它允许我们在不需要...

    关于Spring中@Async注解使用

    @Async 注解是 Spring 框架提供的一种异步执行方法的实现方式,从 Spring 3.0 版本开始提供。使用 @Async 注解可以将方法标识为异步方法,通过 SimpleAsyncTaskExecutor 执行,但不推荐使用这个默认线程池。 @Async...

    spring boot 使用@Async实现异步调用方法

    `@Async`注解是Spring提供的一个功能,用于将一个方法标记为异步执行,使得该方法不会阻塞调用者,而是立即返回,从而实现并发执行。下面将详细解释如何在Spring Boot中使用`@Async`实现异步调用,以及其背后的原理...

    Spring @Async 的使用与实现的示例代码

    Spring @Async 是 Spring 框架中一个重要的异步处理机制,通过使用 @Async 注解可以将方法设置为异步执行,从而提高系统的响应速度和吞吐量。本文将详细介绍 Spring @Async 的使用和实现机制,并提供示例代码以供...

    Spring中异步注解@Async的使用、原理及使用时可能导致的问题及解决方法

    @Async 注解是一种非常有用的spring 注解,它可以让被标注的方法异步执行,从而提高应用程序的性能和响应速度。但是,@Async 注解的使用也存在一些问题和限制,例如循环依赖的问题。如果不了解 @Async 注解的使用...

    Spring中@Async注解实现异步调详解

    在实际开发中,@Async注解可以广泛应用于各种异步场景,例如异步发送邮件、异步处理大数据、异步执行长时间的计算任务等等。使用@Async注解可以使得程序更加灵活、高效和可靠。 需要注意的是,@Async注解只能在...

    【java框架】SpringBoot(10) -- SpringBoot巧用 @Async提升API接口并发能力 .pdf

    然后,只需在需要异步执行的方法上添加`@Async`注解,如: ```java @Component public class Task { @Async public void doTaskOne() throws Exception {...} @Async public void doTaskTwo() throws Exception...

    深入理解Spring注解@Async解决异步调用问题

    深入理解Spring注解@Async解决异步调用问题 本文将详细介绍Spring框架中的@Async注解,并深入理解其在解决异步调用问题中的应用。通过示例代码和详细的解释,帮助读者更好地理解@Async的使用和原理。 一、异步调用...

    Springboot启用async异步调用

    接下来,我们需要定义一个异步服务类,其中包含我们想要异步执行的方法。这些方法应带有`@Async`注解。例如,我们可以创建一个名为`AsyncService`的类: ```java @Service public class AsyncService { @Async ...

    Spring Boot Async异步执行任务过程详解

    Spring Boot Async异步执行任务过程详解 Spring Boot Async异步执行任务过程详解主要介绍了Spring Boot中异步执行任务的过程,通过示例代码介绍了非常详细,对大家的学习或者工作具有一定的参考学习价值。 一、...

Global site tag (gtag.js) - Google Analytics