The Future of C++ Parallel and Concurrency Safety Guidelines
summary
Documents present nearly 100 rules split into nine sections with about 81 drafted now, classifying rules as decidable or undecidable for static analysis. Specific, checkable rules include do not call std::thread::detach, lock-ordering must form a DAG, and guidance like use only std::memory_order_seq_cst for atomics is debated. Work targets integrating with MISRA and AUTOSAR, producing rules suitable for tools (single-TU checks) and flagging those that require whole-program or human rationale.
AI-written summary · about
chapters (11)
- 0:00Start
- 4:54Safety Integrity Approach
- 6:41Safety Integrity Levels by domain
- 10:28Safety Topic: Dynamic Memory Management
- 12:52Concurrency Bugs/Race conditions
- 18:33Concurrency and parallelism rule summary 2
- 21:44Which one to choose and what is the difference?
- 23:39Comparing coding standards
- 36:11An example of thread rule
- 46:20Safety Critical GPU API Evolution
- 48:48Conclusion
related talks
01h 03mBack to Basics: The C++ Core Guidelines
53mFrom Chaos to Control: Overcoming C and C++’s Inherent Unsafety
59mThreads and Locks must Go
01h 30mC++ in Constrained Environments
01h 04mConcurrency TS2: Improved C++ Concurrency and Lock-free Programming
01h 29mDelivering Safe C++
44mStories from a parallel universe
01h 07mAn Introduction to Multithreading in C++20
