volatile 說明

如果把一個變量定義爲volatile,相當於告訴編譯器該變量可能隨時被改變,例如被操作系統或硬件改變。

因爲帶有volatile的變量可以在任何時刻改變,該變量的物理地址可能被頻繁的訪問,這就意味着編譯器

不能對這些變量實行優化

相反,一個變量未被定義成volatile,則編譯器認爲該變量不能在應用程序之外改變,因此編譯器可以對

這種變量實行優化


volatile一般應用在如下場合

1.訪問內存映射的外圍設備

2.在不同進程之間共用的全局變量

3.中斷服務程序中訪問的全局變量

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章