Strongly Happens Before do C++20: Desvendando o Modelo de Memória

2025-09-01

Este artigo mergulha na relação "strongly happens before", recém-introduzida no C++20, que resolve um problema complicado no modelo de memória do C++. Usando um exemplo simples de programa multithread, o autor explica progressivamente como a ordem de modificação, a ordenação de coerência e a relação "strongly happens before" restringem a ordem de execução concorrente. O artigo também analisa por que certas execuções que aparentemente violam o modelo de memória do C++ são permitidas em arquiteturas Power e explica como a relação "strongly happens before" corrige essas inconsistências, garantindo, em última análise, uma única ordem total para todas as operações `memory_order::seq_cst`.

Leia mais
Desenvolvimento