volatile爲何要修飾中斷裏的變量

共有四種狀況:程序員 就下面這三種狀況,還有利用for循環去延時的程序防止被優化(編譯器認爲for循環沒用而優化掉),沒有其它了,若是是這幾種,那就乾脆直接用volatile修飾:面試 一個是防止變量在其它地方被改變,而cash裏沒有改變,因此要求每次都要讀取內存。多線程 一個是防止編譯器優化,編譯器感受你這個變量不會有變化,可是實際在其它線程或硬件會改變它,因此要每次從內存讀,你編譯器就不要優化
相關文章
相關標籤/搜索