@Service
public class InfoService {
private Info currentInfo;
public void initInfo(String data) {
currentInfo = new Info(data);
}
//blarblar...
}
如果这不是线程安全的,我的服务方法应该更改为将“currentInfo”作为其参数。 我不想做重复的参数代码,所以我把它作为服务的成员变量。 当然,这段代码对我来说完美无缺,但我担心这可能会导致线程危险。
“currentInfo”可能是线程危险的?
最佳答案
初始化后你会得到这个类的单例实例,现在假设两个线程引用了这个对象,
thread-1:
设置 currentInfo 并开始计算基于它的东西(我假设你在其他计算中用你的 //blarblar...
)
thread-2:
thread-1开始使用后thread-2重置
关于java - Spring : Is this member variable thread-safe?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20876838/