HFT CORE SYSTEMS

The C++ memory model and data-race freedom

Lesson 57 of 96Phase 06: Concurrency and lock-free engineering
Video lesson coming soon

The written objectives and hands-on lab are available now.

cppvalley on YouTube ↗

Learning objectives

What you should understand

  1. Define happens-before and conflicting actions
  2. Recognize undefined behavior from data races
  3. Separate compiler and CPU reordering models

Lab

Hands-on exercise

Analyze and repair a deliberately racy handoff.

Deliverable

Evidence of completion

A happens-before graph plus ThreadSanitizer evidence.

Prerequisite
EP 56

Phase 06

Concurrency and lock-free engineering

Full curriculum