java異步返回結果,springboot之@Async實現異步

 2023-11-19 阅读 36 评论 0

摘要:據說springboot有個注解@Async可以實現異步調用,然后我來用用看! 增加一個maven新模塊: java異步返回結果。 增加如下依賴,不增加配置: java 異步調用、然后我們寫一個異步調用的服務: 這里需要實現異步的功能,還需要在

據說springboot有個注解@Async可以實現異步調用,然后我來用用看!

增加一個maven新模塊:

java異步返回結果。

增加如下依賴,不增加配置:

java 異步調用、然后我們寫一個異步調用的服務:

這里需要實現異步的功能,還需要在Application加上注解@EnableAsync,類似于Spring的<task:*> XML命名空間中的功能。

springboot異步日志?

然后我們寫一個測試用例

日志輸出:

從上面的日志中,我們可以看到調用是異步執行的,就是使用一下這個功能,實際上使用也不用這么復雜吧,使用的Future<String>,我們在新版本的JDK中,還可以使用其他的方式!

我們可以看到在EnableAsync注解中有@Import?AsyncConfigurationSelector.class(用來導入一個或多個class,這些類會注入到spring容器中,或者配置類,配置類里面定義的bean都會被spring容器托管)。

@EnableAsync注釋啟動了Spring在后臺線程池中運行@Async方法的能力。該類還自定義使用的Executor。在我們的示例中,我們希望將并發線程數限制為2并將隊列大小限制為500.您可以調整更多內容。默認情況下,使用SimpleAsyncTaskExecutor。

?文檔里寫了@Async有兩個使用的限制

  • 它必須僅適用于public方法
  • 在同一個類中調用異步方法將無法正常工作(self-invocation)

下節再續!

有什么討論的內容,可以加我公眾號:

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/183405.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息