close
小的承認...
在我第一次看到這名詞的時候...
以為記憶體會揮發消失XDDD
好啦,這是一個命名的前置字
int xxx → volatile int xxx
至於這有甚麼好處呢..
簡單說,
可以防止Compiler在編譯簡化記憶體的時候,做出我們不想要的事情
ex :
B = A;
C = A;
D = A;
編譯器會自動處理成
B = C = D = A
但是,當A是時變數的時候,就會出現問題了
如果在 B、C、D的宣告加上 volatile 那就可以防止這樣的問題發生
會碰到這樣的情況
大多數 是記憶體會隨時間快速變動
或者 多執行緒底下 更改到同名變數
比較容易發生這樣的狀況,
所以,要注意共用以及簡化有可能發生的Bug
否則..當Debug到瘋掉才發現這樣的問題時
你會想砍人ˊ___>ˋ
全站熱搜