Re: [問題] volatile 用法

作者: archiee (1B2C器材班超人)   2016-12-24 09:24:06
※ 引述《caxz ( )》之銘言:
: 今天被問到的一個問題
: 假設在main 中有如此宣告
: main()
: {
: volatile int i ;
: int j;
: i=1;
: i=2;
: j=1;
: j=2;
: }
: 請問兩整數變數i j 有何不同
: 這要如何解釋呢??
: 感謝賜教
volatile 揮發, 可變性
顧名思義 宣告 volatile int i, 表示i 可能會遭遇到非程式以外的變化
multithreads 共用shared memory..
比如硬體中斷 常見如 I/O /bus 而使i 需要"被立即更新"..
至於應用 我目前常用的就是 強制從 MMIO 讀某些IO 狀態
或者 multi-threads 常用的shared memory..
這塊記憶體會因為compiler optimize 而fail

Links booklink

Contact Us: admin [ a t ] ucptt.com