Data caching, garbage collection, and the Java memory model. - Puffitsch, Wolfgang (2009)