Почему энергозависимость в C ++ 20 устарела?

17

Согласно cppreference , большинство применений этого volatileключевого слова в C ++ 20 не рекомендуется. В чем недостаток volatile? И каково альтернативное решение, когда не используется volatile?

康 桓 瑋
источник
13
Есть некоторые варианты использования volatile, которые НЕ устаревают, потому что они полезны (например, в коде, который напрямую загружается или хранится из указанных областей памяти, например, в драйверах устройств). Очень немногие из «устаревшие использования» связаны со способностью к особенностям использования , которые слишком много progammers используют - неправильно - как средство делает доступ к переменной атомное . Теперь библиотека C ++ (начиная с C ++ 11) обеспечивает правильные средства обеспечения атомарного доступа к переменным, поэтому имеет смысл отговаривать программистов от неправильного использования, volatileкогда целью является атомарный доступ.
Питер
@Peter Какие типичные виды использования летучих являются неправильными?
любопытный парень

Ответы: