¿Por qué es volátil en desuso en C ++ 20?

17

Según cppreference , la mayoría de los usos de la volatilepalabra clave deben quedar en desuso en C ++ 20. ¿Cuál es la desventaja de volatile? ¿Y cuál es la solución alternativa cuando no se usa volatile?

康 桓 瑋
fuente
13
Hay algunos usos volatileque NO están en desuso, porque son útiles (por ejemplo, en código que carga o almacena directamente desde ubicaciones de memoria especificadas, como en los controladores de dispositivos). Muchos de los "usos obsoletos" están relacionados con la capacidad de usar funciones que utilizan demasiados programadores, incorrectamente, como un medio de hacer que un acceso atómico sea variable . La biblioteca de C ++ ahora (desde C ++ 11) proporciona un medio correcto para garantizar el acceso atómico de las variables, por lo que tiene sentido desalentar a los programadores de usar incorrectamente volatilecuando la intención es el acceso atómico.
Peter
@ Peter ¿Qué usos típicos de volátiles son incorrectos?
curioso

Respuestas: