Spring默认是单例bean 是线程不安全的,因为每次使用的都是一个bean 如果其中涉及到状态,比如其中一个字段是用来计数的,那么就会产生变成不安全的问题。
如果想要线程安全,又不改变单例的话 就要用threadlocal将 状态值保存起来。
进行线程隔离
或者将单例默认改变为多例,每次使用都用的是独立的bean,就不会有线程安全问题。
Spring默认是单例bean 是线程不安全的,因为每次使用的都是一个bean 如果其中涉及到状态,比如其中一个字段是用来计数的,那么就会产生变成不安全的问题。
如果想要线程安全,又不改变单例的话 就要用threadlocal将 状态值保存起来。
进行线程隔离
或者将单例默认改变为多例,每次使用都用的是独立的bean,就不会有线程安全问题。