The C++ Execution Model

Speaker: Bryce Adelstein Lelbach

Audience level: [ Beginner | Intermediate ]

At the heart of the C++ programming language is the multi-threaded abstract machine and its execution model, the platform-agnostic formal model that generically describes how to run a C++ program. In this talk, you will learn the rules that govern how your C++ code is executed and see how those rules impact the C++ code you write every day.

We'll explore the C++ execution and memory model, and discuss fundamental questions such as:

- What are threads in C++ and how do they interact?
- What is memory in C++?
- In what order are things in my C++ program executed?
- How are C++ expressions and statements executed?
- What are the semantics of calling a function in C++?
- What does "happens before" mean?

If you're interested in gaining a deeper understanding of how your C++ code is executed and how concurrency works in C++, you should attend this talk.