For about 15 years the Java multithreaded programming model has followed the evolution of CPUs and the growing needs of applications.
Multithreaded programming poses two challenges for the developer: parallelize the processes, and ensure consistency of the data,
while fully leveraging the computing power of modern multicore processors.
This lecture begins by describing precisely these challenges and their issues. It then describes the technical solutions available today,
whether in the JDK API or in the frameworks of the Java ecosystem. From the threads of Java 1.0, to the Fork / Join of Java 7, and the anticipated
parallel () of Java 8, from synchronized and volatile to STM and actors, everything will be explained. Some algorithm upcoming issues will also be
shown to illustrate the talk.
Author:
José Paumard
Passionate about programming computers for over 20 years, Jose made his debut in assembler and C, C for SIMD parallel machines before adopting Java as an object-oriented language. Assistant professor in Paris University for 15 years, PhD in applied maths and computer science, Jose also has a passion for education. He writes a blog, Java le soir, French documentary source on Java technologies for thousands of french speaking developers around the world. He is a member of the french Paris JUG, and have been co-organizing Devoxx France for 3 years. He is also a speaker for various conferences including Devoxx and JavaOne, as well as many JUGs.