Comparing different concurrency models on the JVM

A session at Devoxx UK 2015

Thursday 18th June, 2015

4:00pm to 4:50pm (GMT)

For many years threads and locks have been the only concurrency model available on the JVM and they are still the default way to develop parallel and concurrent programs in Java. Nevertheless in many cases they are a too low level abstraction: using them correctly is hard and understanding the Java Memory Model even harder. For this reason different alternative concurrency models have been popularized in recent years. Scala and Akka made available on the JVM the actor-based model originally implemented in Erlang. Conversely Clojure's approach clearly separates an identity from the series of different values associated to it over time introducing the concept of Software Transactional Memory. Finally functional programming principles like immutability and referential transparency greatly simplify concurrent programming in many cases and this caused a FP renaissance as also witnessed by the introduction of lambda expressions in Java 8. The purpose of this talk is comparing all these different concurrency models underlining their strengths and weaknesses and giving some guidelines to choose the one that best fit a specific scenario.

About the speaker

This person is speaking at this event.
Mario Fusco

Creator of lambdaj & hammurabi, leader of Milano Jug, Drools core developer & frequent speaker. Passionate Java & Scala programmer, mussels eater & beer drinker bio from Twitter

Sign in to add slides, notes or videos to this session

Devoxx UK 2015

England England, London

17th19th June 2015

Tell your friends!


Time 4:00pm4:50pm GMT

Date Thu 18th June 2015

Short URL


Official event site


View the schedule


See something wrong?

Report an issue with this session