Type-based race detection for Java

作者: Cormac Flanagan , Stephen N. Freund

DOI: 10.1145/349299.349328

关键词: ScalaJava annotationInstruction-level parallelismReal time JavaJavastrictfpGenerics in JavaRegister allocationSource lines of codeComputer scienceInterface (Java)Programming languageJava concurrencyJava Modeling Language

摘要: This paper presents a static race detection analysis for multithreaded Java programs. Our is based on formal type system that capable of capturing many common synchronization patterns. These patterns include classes with internal synchronization, thatrequire client-side and thread-local classes. Experience checking over 40,000 lines code the demonstrates it an effective approach eliminating races conditions. On large examples, fewer than 20 additional annotations per 1000 were required by checker, we found number in standard libraries other test

参考文章(34)
Nicholas Sterling, WARLOCK - A Static Data Race Analysis Tool. USENIX Winter. pp. 97- 106 ,(1993)
Cormac Flanagan, Martín Abadi, Types for Safe Locking european symposium on programming. pp. 91- 108 ,(1999) , 10.1007/3-540-49099-X_7
Don Syme, Proving Java Type Soundness Formal Syntax and Semantics of Java. pp. 83- 118 ,(1999) , 10.1007/3-540-48737-9_3
Sophia Drossopoulou, Susan Eisenbach, Java is type safe — Probably european conference on object-oriented programming. pp. 389- 418 ,(1997) , 10.1007/BFB0053388
Massachusetts Institute of Technology. Laboratory for Computer Science, Parameterized Types and Java Massachusetts Institute of Technology. ,(1996)
Bill Joy, Guy Steele, James Gosling, Gilad Bracha, None, The Java Language Specification ,(1996)
Cormac Flanagan, Martín Abadi, Object Types against Races CONCUR’99 Concurrency Theory. pp. 288- 303 ,(1999) , 10.1007/3-540-48320-9_21
Luca Cardelli, Mobile Ambient Synchronization ,(1997)
Stefan Savage, Michael Burrows, Greg Nelson, Patrick Sobalvarro, Thomas Anderson, Eraser: a dynamic data race detector for multithreaded programs ACM Transactions on Computer Systems. ,vol. 15, pp. 391- 411 ,(1997) , 10.1145/265924.265927
Flemming Nielson, None, Annotated type and effect systems ACM Computing Surveys. ,vol. 28, pp. 344- 345 ,(1996) , 10.1145/234528.234745