In this presentation from QCon London 2008, Brian Goetz discusses the difficulties of creating multithreaded programs correctly, incorrect synchronization, race conditions, deadlock, Software Transactional Memory, the history of concurrency, alternatives to threads, Erlang, Scala, and recommendations for concurrency in Java.
Watch Concurrency: Past and Present (60 minutes).
Peter Pilgrim, who attended this talk, said:
Brian Goetz does NOT expect people to dump Java and move to JKOCaml, Erlang or other model any time soon.
He promotes "Immutable object where you can". Surprise, surprise. Sometimes it cheaper to make a copy than it is to share. Copying an immutable object is always thread safe.
He recommends to take a look at Scala, in particular the Scala Actors library.
Leonid Maslov also added:
The idea behind [Software Transactional Memory] is the following: let the smart-smart-smart and one more again smart JVM handle these difficult problems, let's delegate this to smart folks behind JVM impls. Hmmm. Sounds like a good stuff (at least for me). The problem is: we won't get it soon, soon enough. Research is still done in this area. Possible (mention-worth) solutions: (I really recommend You to watch that f* great presentation)
- Functional languages like Haskell, Erlang, Scala (Actors? library), JOCaml and so on
- Not shared state.
- Message passing only. Callback mechanisms.
Community comments
Slow down.
by Sara Jay,
Re: Slow down.
by Paulo Trecenti,
transcripts please!
by test freak,
Great !
by Dylan Stamat,
Great
by 许 晓斌,
Cool
by Surendran Roundry,
Worth it
by John O’Connor,
Message Based Concurrency in Java
by Mike Rettig,
Leonardinius Daugavpils
by Leonid Maslov,
Re: Leonardinius Daugavpils
by Leonid Maslov,
Re: Leonardinius Daugavpils
by Stefan Tilkov,
Re: Leonardinius Daugavpils
by Ryan Slobojan,
Re: Leonardinius Daugavpils
by Leonid Maslov,
Slow down.
by Sara Jay,
Your message is awaiting moderation. Thank you for participating in the discussion.
Brian, please ignore the below statement if you have physical problems with speech, but if you slow down a bit without the "unnnnn unnnnn unnnn ummmmm ummmms", it will be so much better. Your book concurrency in action is phenomenal and a gem in the piles of crap these days. Goes without saying that you are definitely "Doug Lea" material, but it would be great if you could slow down a bit to let us understand a bit from you.
However, nothing is gonna stop me from reading your books ;-).
Re: Slow down.
by Paulo Trecenti,
Your message is awaiting moderation. Thank you for participating in the discussion.
Hi, did you see something about Ada in Adacore.com? Ada is not much better than all these other languages?
transcripts please!
by test freak,
Your message is awaiting moderation. Thank you for participating in the discussion.
Hi,
would it be possible to provide transcripts?
Great !
by Dylan Stamat,
Your message is awaiting moderation. Thank you for participating in the discussion.
Fantastic presentation, and I thought the deliveries pace was perfect. Thank you Brian !
Great
by 许 晓斌,
Your message is awaiting moderation. Thank you for participating in the discussion.
Really wonderful presentation, thanks
Cool
by Surendran Roundry,
Your message is awaiting moderation. Thank you for participating in the discussion.
A cool,informative and a wonderfull presentation,Thank you Brian Goetz.
I did enjoy the introduction :-)
Worth it
by John O’Connor,
Your message is awaiting moderation. Thank you for participating in the discussion.
A top notch presentation.
Message Based Concurrency in Java
by Mike Rettig,
Your message is awaiting moderation. Thank you for participating in the discussion.
Message based concurrency is also available as a library for plain old Java.
Jetlang Messaging Library
Mike Rettig
Jetlang Developer
Leonardinius Daugavpils
by Leonid Maslov,
Your message is awaiting moderation. Thank you for participating in the discussion.
I'm _Leonardinius Daugavpils_ mentioned above. Only, leonardinius is my display name (nickname), and Daugavpils - is the place I come from :D
This would wonderful if someone would change this to Leonid Maslov. Thanx in advance.
// If you are not confident about it - try to contact blog owner - leonidms@gmail.com for clarification.
Re: Leonardinius Daugavpils
by Leonid Maslov,
Your message is awaiting moderation. Thank you for participating in the discussion.
leonardinius.blogspot.com/2008/09/infoq-called-...
Re: Leonardinius Daugavpils
by Stefan Tilkov,
Your message is awaiting moderation. Thank you for participating in the discussion.
Hi Leonid, thanks for letting us know - I've fixed it.
Re: Leonardinius Daugavpils
by Ryan Slobojan,
Your message is awaiting moderation. Thank you for participating in the discussion.
Hi Leonid,
My apologies for the mix-up on that - when I looked at your blog, in the upper right corner I saw:
leonardinius Daugavpils/Riga, Latvia
which I interpreted as being your name, with Riga as your hometown.
Thanks for fixing that Stefan!
Re: Leonardinius Daugavpils
by Leonid Maslov,
Your message is awaiting moderation. Thank you for participating in the discussion.
Hi Ryan and Stefan.
Not a big deal, I really understand the cause of this. Probably I would get it wrong too (it's just this widget, which displays profile info in some weird manner).
Anyway, thanks a lot for finding that article and mentioning it here.
Thanks Ryan and Stefan.