SpringBoot基于注解@Async使用线程的异步调用

@Async简介:   在Spring中,基于@Async标注的方法,称之为异步方法;这些方法将在执行的时候,将会在独立的线程中被执行,调用者无需等待它的完成,即可继续其他的操作。

@Async用法:   @Async添加到方法上

@Async调用中的事务处理机制  :原文链接:https://blog.csdn.net/fwk19840301/article/details/90082867

    在@Async标注的方法,同时也适用了@Transactional进行了标注;在其调用数据库操作之时,将无法产生事务管理的控制,原因就在于其是基于异步处理的操作。

     那该如何给这些操作添加事务管理呢?可以将需要事务管理操作的方法放置到异步方法内部,在内部被调用的方法上添加@Transactional.

    例如:  方法A,使用了@Async/@Transactional来标注,但是无法产生事务控制的目的。

                方法B,使用了@Async来标注,  B中调用了C、D,C/D分别使用@Transactional做了标注,则可实现事务控制的目的。

更多请参考 原文链接https://www.cnblogs.com/jpfss/p/10273129.html

猜你喜欢

转载自www.cnblogs.com/gjq1126-web/p/12190432.html