In this lightning talk, we take a look at ArcShift, a lock-free data structure for shared data that still needs to be mutated.
In this lightning talk, we take a look at ArcShift, a lock-free data structure for shared data that still needs to be mutated.
While the standard library's Arc<RwLock<T>> allows multiple threads to access and modify the same object, even read-accesses require somewhat expensive atomic operations.
ArcShift allows multiple writers without penalizing readers, and give examples on how (and how not to) write lock-free data structures. We'll also dive into how ArcShift handles the memory reclamation problem (or cheats its way out of it).
I applied PGO to many kinds of software, collected a lot of carefully hidden traps on my journey, and found multiple ways how to avoid them. In this talk, I want to share with you my experience.
In this talk, we’ll go through some real-life examples of using Rust features like traits, newtype wrappers, generics, and macros for creating financial software. We’ll look at how regular application code can benefit from the features Rust provides.
Choosing Rust is already improving your life as a programmer. But there’s always something we can still improve. So here’s a series of tips to save you time, typing, sanity or all of them.
After spending many happy years in Scala, not mutating anything but copying objects faster than rabbits breed I ventured into the world where each allocation is carefully examined and it is perfectly normal to reuse the same list for different purposes.