spring在创建bean的时候用了多种手段来保证线程的安全,但是为什么创建bean的时候要保证线程的安全?难道创建bean的时候是用多线程来创建的吗,但是源码中并未找到相关线索,请大神指教
spring在创建bean的时候用了多种手段来保证线程的安全,但是为什么创建bean的时候要保证线程的安全?难道创建bean的时候是用多线程来创建的吗,但是源码中并未找到相关线索,请大神指教
4 回答1.4k 阅读✓ 已解决
4 回答1.3k 阅读✓ 已解决
1 回答2.6k 阅读✓ 已解决
2 回答740 阅读✓ 已解决
2 回答1.7k 阅读
2 回答1.7k 阅读
2 回答1.3k 阅读
因为首先 bean 之间存在大量的复杂的依赖关系,即使使用多线程初始化,也会需要进行大量的同步;其次还要判断 bean 之间是否存在循环依赖,检测循环依赖只能是单线程的。所以目前 Spring 的初始化过程没有使用并发的方式去做。具体可以参考这里: https://jira.spring.io/browse...