Overview
Explore advanced multithreading techniques in C++ with a focus on lockless lists and Read-Copy-Update (RCU) in this comprehensive conference talk. Gain insights into the importance and complexities of multithreading, and delve into the libGuarded library's latest version. Learn about the significance of lockless containers and RCU technology, understanding their implementation in libGuarded 2.0 and their application in preventing deadlocks in the CsSignal library. Discover the intricacies of RCU, including its working principles, grace periods, and different classes. Compare Linux and libGuarded implementations, and explore future developments in this field. Suitable for those with basic familiarity in multithreading, this presentation provides a deep dive into advanced concepts that can enhance the performance and scalability of multi-threaded network daemons and other C++ applications.
Syllabus
Introduction
Multithreading
SharedGarden
Deferred Guarded
CopyOnWrite Guarded
LibGuarded
CSSignal
RCU
How does it work
No grace period
Two classes
RCU list
Insert
Erase
Zombie List
Zombie List Maintenance
Question
Linux vs Libguarded
Whats next
Putting it all together
Additional work
Recap
Kitchen Sink
Leak Memory
Taught by
CppNow