(如Proving the following code not thread safe证明)下面的类不是线程安全的线程安全框架
是否有一个框架在那里,可以用编译时/运行时分析帮助,并告诉我们,下面是不是线程安全?
对于编译时,理想情况下在Eclipse中会出现摆动下划线,并告诉我们该类不是线程安全的?
对于运行时,任何静态代码分析都会将该类捕获为非线程安全的类?
public class LazyInitRace {
private ExpensiveObject instance = null;
public ExpensiveObject getInstance() {
if (instance == null)
instance = new ExpensiveObject();
return instance;
}
}
FindBugs有一个完整的“多线程正确性”类别。 – 2010-03-11 07:52:22
我猜FindBugs是目前最好的选择。 – portoalet 2010-03-15 06:01:46