mirror of
https://github.com/Snailclimb/JavaGuide
synced 2025-06-16 18:10:13 +08:00
[docs update]更新目录
This commit is contained in:
parent
1d68b14cdb
commit
3b81052f53
@ -414,6 +414,7 @@ export default sidebar({
|
|||||||
"spring-transaction",
|
"spring-transaction",
|
||||||
"spring-design-patterns-summary",
|
"spring-design-patterns-summary",
|
||||||
"spring-boot-auto-assembly-principles",
|
"spring-boot-auto-assembly-principles",
|
||||||
|
"async",
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
@ -1,8 +1,15 @@
|
|||||||
|
---
|
||||||
|
title: Async 注解原理分析
|
||||||
|
category: 框架
|
||||||
|
tag:
|
||||||
|
- Spring
|
||||||
|
---
|
||||||
|
|
||||||
# `@Async` 原理分析
|
# `@Async` 原理分析
|
||||||
|
|
||||||
`@Async` 注解由 Spring 框架提供,被该注解标注的类或方法会在 **异步线程** 中执行。这意味着当方法被调用时,调用者将不会等待该方法执行完成,而是可以继续执行后续的代码。
|
`@Async` 注解由 Spring 框架提供,被该注解标注的类或方法会在 **异步线程** 中执行。这意味着当方法被调用时,调用者将不会等待该方法执行完成,而是可以继续执行后续的代码。
|
||||||
|
|
||||||
**原理概述:** `@Async` 可以异步执行任务,本质上是使用 **动态代理** 来实现的。通过 Spring 中的后置处理器 `BeanPostProcessor` 为使用 `@Async` 注解的类创建动态代理,之后 `@Async` 注解方法的调用会被动态代理拦截,在拦截器中将方法的执行封装为异步任务提交给线程池处理。
|
**原理介绍:** `@Async` 可以异步执行任务,本质上是使用 **动态代理** 来实现的。通过 Spring 中的后置处理器 `BeanPostProcessor` 为使用 `@Async` 注解的类创建动态代理,之后 `@Async` 注解方法的调用会被动态代理拦截,在拦截器中将方法的执行封装为异步任务提交给线程池处理。
|
||||||
|
|
||||||
开始讲解 `@Async` 的原理之前,我们先来看看`@Async` 使用。
|
开始讲解 `@Async` 的原理之前,我们先来看看`@Async` 使用。
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user