当前位置: 首页 > article >正文

27.Spring如何避免在并发下获取不完整的Bean?

Spring如何避免在并发下获取不完整的Bean?

1、为什么获取不到完整的Bean?

我们知道, 如果spring容器已经加载完了, 那么肯定所有bean都是完整的了, 但如果, spring没有加载完, 在加载的过程中, 构建bean就有可能出现不完整bean的情况

2、如何解决读取到不完整bean的问题.

其实, 之所以出现这样的问题, 原因就在于, 第一个bean还没有被创建完, 第二个bean就开始了. 这是典型的并发问题. 针对这个问题, 其实,我们加锁就可以了,解决方案如下:

双重检查锁
为什么一级缓存不加到锁里面:性能:避免已经创建好的Bean阻塞等待

代码演示

第一: 将整个创建过程加一把锁

/**
     * 获取bean, 根据beanName获取
     */
    public static Object getBean(String beanName) throws

http://www.kler.cn/a/152698.html

相关文章:

  • 有关安科瑞AIM-D100-ES储能用直流绝缘监测仪的功能介绍-安科瑞 蒋静
  • 【快速见刊|投稿优惠】2024年机电一体与自动化技术国际学术会议(IACMAT 2024)
  • ELK分布式日志管理平台部署
  • JVM的小知识总结
  • nvm安装管理nodejs版本
  • C++-设计一个特殊类
  • 【高效开发工具系列】Hutool DateUtil工具类
  • ARM安全架构——为复杂软件提供保护
  • 设计模式:观察者模式
  • es6之class类(未完成)
  • K8s Docker实践三
  • Python开发运维:PyMongo 连接操作 MongoDB
  • 【Openstack Train安装】十二、Cinder安装
  • 力扣每日一题(2023-11-30)
  • drool 7 multiThread 测试
  • java分布式锁分布式锁
  • 鉴源论坛 · 观擎丨民机机载软件的配置管理
  • 【Android MediaCodec 将音频转换为 pcm 格式】
  • ModuleNotFoundError: No module named ‘mdtex2html‘ module已经安装还是报错,怎么办?
  • 利用python实现文件压缩打包的功能