Java Singleton-Springbean为什么不是线程安全的
我理解Java Singleton-Springbean为什么不是线程安全的,java,multithreading,spring,thread-safety,spring-bean,Java,Multithreading,Spring,Thread Safety,Spring Bean,我理解对象创建和线程安全是两件不同的事情 Singleton是一种构建对象的方法,我们遵循某种设计模式来构建对象 Springbean-使用Singletonscope,我们保证只有一个实例,但Springbean仍然不是线程安全的。。为什么....不能是线程安全的,正是因为只创建了一个实例,所以每个请求(线程)都将使用同一个实例,所以可能会发生并发问题 例如,如果您的范围是prototype,Spring将不使用singleton,然后它将为每次getClass调用创建一个实例 对于请求或会话
对象创建
和线程安全
是两件不同的事情
Singleton
是一种构建对象的方法,我们遵循某种设计模式来构建对象
Springbean-使用
Singleton
scope,我们保证只有一个实例,但Springbean仍然不是线程安全的。。为什么....不能是线程安全的,正是因为只创建了一个实例,所以每个请求(线程)都将使用同一个实例,所以可能会发生并发问题
例如,如果您的范围是prototype,Spring将不使用singleton,然后它将为每次getClass调用创建一个实例
对于请求或会话,将通过请求或每个用户会话创建实例
通常,对所有状态的完整bean使用prototype作用域,对无状态bean使用singleton作用域
您可以在文档中阅读它是如何工作的