Answers are grounded in this paper and cite their sources.
We present a novel technique for static race detection in Java programs, comprised of a series of stages that employ a combination of static analyses to successively reduce the pairs of memory accesses potentially involved in a race. We have implemented our technique and applied it to a suite of multi-threaded Java programs. Our experiments show that it is precise, scalable, and useful, reporting tens to hundreds of serious and previously unknown concurrency bugs in large, widely-used programs with few false alarms.
No takes yet. Share an insight, caveat, or question.
Naik et al. (2006) studied this question.
Synapse has enriched 10 related papers. Consider them for comparative context: