【发布时间】:2020-12-04 00:30:14
【问题描述】:
我得到:Singleton 类在通过 SonarQube 扫描时在 Springboot 代码中的 4-5 个位置以不同步的方式写入字段。现在,我想了解如何让这个警告消失?是否有针对此错误的一般修复方法
一个例子如下:
public class NewProvProcess {
@Autowired
DataExecutor dataexecutor;
String flag = "N";
public void dbFetchNewProvRecords() {
do {
try {
Thread.sleep(180000);
flag = dataexecutor.fetchNDBRunStatus();
LOGGER.info("The Flag value is {}, checking again after 3 minute ", flag);
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
}
}while(("N").equals(flag));
}
}
【问题讨论】:
-
答案很简单。根据声纳的说法,问题在于它是不同步的。你认为“不同步”的反义词是什么?
-
如果您在 UI 中单击“查看规则”,通常会得到带有一些示例的说明。
标签: java multithreading spring-boot sonarqube