1. Aspinall D, Ševčík J. Java memory model examples: good, bad and ugly. In: Proceedings of Verification and Analysis of Multi-threaded Java-like Programs. 2007, 66–80
2. Lamport L. How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Transactions on Computers, 1979, 28(9): 690–691
3. Boehm H J. Threads cannot be implemented as a library. In: Proceedings of Programming Language Design and Implementation. 2005, 261–268
4. Adve S V, Gharachorloo K. Shared memory consistency models: a tutorial. IEEE Transactions on Computers, 1996, 29(12): 66–76
5. Manson J, Pugh W, Adve S V. The Java memory model. In: Proceedings of the 32nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. 2005, 378–391