JavaZone 2011 - The Java Memory Model
With the increasing availability and use of multicore processors Java developers need to acquire some
understanding of the Java memory model. This is because multithread applications that work nicely on a
single-core processor might exhibit "inexplicable" deficiencies when running on a multicore processor
platform. The reason may be differences in the caching strategies applied by different processors.
In order to illustrate the issues this tutorial explains the Java features for multithread programming. Key topics
include: memory model, visibility and reordering issues, volatile and atomic variables, initialisation safety and
final fields, lock-free programming.
Angelika Langer
Bio: Angelika Langer works as an independent trainer with a curriculum of Java and C++ courses. She enjoys
speaking at conferences all over the world, including JavaOne, OOPLSA, JAX and ACCU to name a few. Her
teaching focuses on advanced C++ and Java programming, concurrency, and performance tuning. She is
coƤauthor of a column named "Effective Java" published in the German magazine JavaMagazin and author of
the Java Generics FAQs online. Further information can be found at http://www.AngelikaLanger.com.
