Ejemplo de C ++ "Barrera de memoria" [duplicado]

Esta pregunta ya tiene una respuesta aquí:

C ++ Barreras de memoria para la atómica 2 respuestas

Estaba leyendo la respuesta a esta pregunta con respecto a la palabra clave volátil:

https://stackoverflow.com/a/2485177/997112

La persona dice:

La solución para evitar la reordenación es usar una barrera de memoria, que indica tanto al compilador como a la CPU que no se puede reordenar el acceso a la memoria en este punto. La colocación de tales barreras alrededor de nuestra variable de acceso volátil asegura que incluso los accesos no volátiles no se reordenarán a lo largo de la volatilidad, lo que nos permite escribir código seguro para subprocesos.

Sin embargo, las barreras de memoria también aseguran que todas las lecturas / escrituras pendientes se ejecuten cuando se alcanza la barrera, por lo que efectivamente nos da todo lo que necesitamos por sí mismo, haciendo que la volatilidad sea innecesaria. Solo podemos eliminar el calificador volátil por completo.

¿Cómo se implementa esta "barrera de memoria" en C ++?

EDITAR:

¿Podría alguien dar un ejemplo de código simple por favor?

Respuestas a la pregunta(3)

Su respuesta a la pregunta