WTF Volatile?

Опубликовано в рубрике "Статьи", 01.10.2009.
Тэги: , , , , автор:

Если вы пишите прошивки для микроконтроллеров на C/C++, но наверняка встречались с ситуациями, когда:

  • Программа работает хорошо до тех пор, пока вы не включите оптимизацию
  • Программа работает хорошо пока запрещены прерывания
  • Драйвера аппаратуры прекрасно работают у ваших друзей/коллег, а у вас – глючат
  • В многозадачных приложениях задачи по отдельности работают хорошо, а если запустить их вместе – происходит что-то страшное.

bug

Все эти ситуации могут быть вызваны тем, что вы не используете ключевое слово volatile. Вы не одиноки, очень многие программисты не понимают зачем оно нужно.