Concurrency - ramp up your skills
This post has been imported from my previous blog. I did my best to parse XML properly, but it might have some errors.
If you find one, send a Pull Request.
Yesterday, I gave my Extreme Concurrency talk at rg-dev user group. After the talk I had some really interesting discussions and was asked to provide some resources in the low level concurrency I was talking about. So here’s the list of books, talks and blog posts that can help you to ramp up your skills
[C++] Herb Sutter “atomic Weapons” - it’s about C++ but covers memory models in a way, that’s easy to follow and learn how it works
- .NET Volatile class - it has a good description of what half-barriers are and properly shows two counterparts Read & Write methods
- .NET Interlocked class - the other class with a good description providing methods
that are executed atomically. Basically, these methods are JITted as single assembler operations.
- RampUp - a project of mine :)
- [JAVA] Aeron - the messaging library
- Concurrent programming on Windows by Joe Duffy - this is a hard book to go through. It’s demanding and requires a lot of effort but is the best book if you want to really understand this topic
- Volatile reads and writes by Joe Duffy
- Sayonara volatile by Joe Duffy
Atomicity, volatility and immutability are different by Eric Lippert - that’s the last part of this series
- [JAVA] Psychosomatic, lobotomy, saw - the name is strange but you won’t find here disturbing videos. What you’ll find though, is a deep-dive into memory models.