Overview
Explore multithreaded programming techniques and best practices in this 57-minute conference talk from ACCU 2019. Dive into the world of callbacks, continuations, and task pipelines for efficient data processing across threads. Learn how to manage complexity, ensure clear code structure, and avoid common pitfalls such as dangling references and object leaks. Discover strategies for handling object lifetimes, implementing value-based programming, and utilizing weak pointers. Gain insights on race conditions, executors, and queue management in multithreaded environments. Examine practical solutions, including stop requests and callbacks, to enhance your C++ concurrent programming skills. Walk away with valuable guidelines and alternatives for creating robust, efficient multithreaded applications.
Syllabus
Intro
Overview
Tossbased programming
Executors
Callbacks
Race Conditions
Base Conditions
Multithreaded code
First solution
Downsides
Queue
Lifetime issues
A simple example
Valuebased programming
Reference
Watch for problems
Data object
Hanging tasks
Weak pointer
Stop sauce
Stop request
Stop callback
Guidelines
Alternatives
Taught by
ACCU Conference