青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 297,  comments - 15,  trackbacks - 0
1.volatile有什么用呢?
volatile,只一個變量可能隨時由于外界地變化而變化
例如有兩個線程分別是線程1和線程2
一個全局變量volatile int i = 0;

線程1
執(zhí)行如下代碼
while(i == 0);
printf();
假設(shè)線程1執(zhí)行到 while處,就會反復(fù)執(zhí)行上這條語句

此時線程2執(zhí)行
i = 1;

線程1就會執(zhí)行 printf()

若沒有指定 int i 為 volatile
則當(dāng)線程2執(zhí)行 i = 1;
時,線程1仍然繼續(xù)執(zhí)行while語句

也就是說線程1沒有感知變量i的變化

這是由于編譯器會對代碼進(jìn)行優(yōu)化,以及將i
變量裝入寄存器的原因,當(dāng)i再內(nèi)存中的值發(fā)生變化時
無法判斷在那個寄存器中有該變量的拷貝,而且不能
同步更新該拷貝

因此需要說明該變量為volatile
這樣,編譯器不會將該變量裝入寄存器,而且不會對
涉及該變量的操作進(jìn)行優(yōu)化.

下面有個更理論性的解釋:
volatile總是與優(yōu)化有關(guān),編譯器有一種技術(shù)叫做數(shù)據(jù)流分析,分析程序中的變量在哪里賦值、在哪里使用、在哪里失效,分析結(jié)果可以用于常量合并,常 量傳播等優(yōu)化,進(jìn)一步可以死代碼消除。但有時這些優(yōu)化不是程序所需要的,這時可以用volatile關(guān)鍵字禁止做這些優(yōu)化,volatile的字面含義是 易變的,它有下面的作用:

1 不會在兩個操作之間把volatile變量緩存在寄存器中。在多任務(wù)、中斷、甚至setjmp環(huán)境下,變量可能被其他的程序改變,編譯器 自己無法知道,volatile就是告訴編譯器這種情況。

2 不做常量合并、常量傳播等優(yōu)化,所以像下面的代碼:
volatile int i = 1;
if (i > 0) ...

if的條件不會當(dāng)作無條件真。

3 對volatile變量的讀寫不會被優(yōu)化掉。如果你對一個變量賦值但后面沒用到,編譯器常常可以省略那個賦值操作,然而對Memory Mapped IO的處理是不能這樣優(yōu)化的。

前面有人說volatile可以保證對內(nèi)存操作的原子性,這種說法不大準(zhǔn)確,其一,x86需要LOCK前綴才能在SMP下保證原子性,其二,RISC根本不能對內(nèi)存直接運(yùn)算,要保證原子性得用別的方法,如atomic_inc。

對于jiffies,它已經(jīng)聲明為volatile變量,我認(rèn)為直接用jiffies++就可以了,沒必要用那種復(fù)雜的形式,因?yàn)槟菢右膊荒鼙WC原子性。

你可能不知道在Pentium及后續(xù)CPU中,下面兩組指令

inc jiffies
;;
mov jiffies, %eax
inc %eax
mov %eax, jiffies

作用相同,但一條指令反而不如三條指令快。
posted on 2010-02-03 09:16 chatler 閱讀(206) 評論(0)  編輯 收藏 引用 所屬分類: C++_BASIS
<2011年3月>
272812345
6789101112
13141516171819
20212223242526
272829303112
3456789

常用鏈接

留言簿(10)

隨筆分類(307)

隨筆檔案(297)

algorithm

Books_Free_Online

C++

database

Linux

Linux shell

linux socket

misce

  • cloudward
  • 感覺這個博客還是不錯,雖然做的東西和我不大相關(guān),覺得看看還是有好處的

network

OSS

  • Google Android
  • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • os161 file list

overall

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久噜噜噜久久久| 欧美承认网站| 国产自产高清不卡| 欧美日韩综合在线| 欧美18av| 久久久久国色av免费观看性色| 亚洲国产日日夜夜| 久久久久久噜噜噜久久久精品| 久久精品国产成人| 亚洲伦理中文字幕| 伊人狠狠色j香婷婷综合| 欧美性猛交视频| 欧美电影电视剧在线观看| 欧美一级片一区| 亚洲综合色在线| 亚洲性视频网址| 亚洲午夜精品网| 亚洲私人影吧| 99国产精品99久久久久久| 美女黄毛**国产精品啪啪| 免费成人你懂的| 免费观看在线综合色| 久久一区二区精品| 老色鬼久久亚洲一区二区| 久久色中文字幕| 亚洲国产一区视频| 亚洲乱码视频| 亚洲男人的天堂在线aⅴ视频| 一区二区精品在线| 亚洲一卡二卡三卡四卡五卡| 亚洲伊人一本大道中文字幕| 亚洲一区二区在线免费观看| 亚洲欧美视频在线观看| 久久免费观看视频| 欧美人成免费网站| 国产一区二区三区视频在线观看 | 国产欧美亚洲精品| 亚洲风情在线资源站| 亚洲免费在线播放| 久久夜色撩人精品| 亚洲精品麻豆| 久久狠狠亚洲综合| 欧美电影在线| 国产亚洲欧美aaaa| 这里只有精品在线播放| 欧美阿v一级看视频| 一区二区三区四区五区精品视频 | 欧美激情乱人伦| 国产精品成人一区二区三区夜夜夜| 国内精品嫩模av私拍在线观看| 一本久久综合亚洲鲁鲁| 欧美成人中文| 久久成人在线| 国产精品人人做人人爽人人添| 亚洲人妖在线| 亚洲国产日韩一区二区| 欧美成人精品三级在线观看| …久久精品99久久香蕉国产| 久久婷婷成人综合色| 欧美一级欧美一级在线播放| 国产精品看片你懂得| 亚洲欧美日韩综合一区| 亚洲精品黄网在线观看| 欧美日本国产视频| 亚洲视频免费观看| 99视频精品全国免费| 国产精品毛片a∨一区二区三区| 亚洲欧美日韩视频二区| 狠狠色狠狠色综合系列| 免费一级欧美在线大片| 欧美77777| 亚洲欧美在线x视频| 久久电影一区| 亚洲精品少妇网址| 午夜精品一区二区三区在线| 激情久久综合| 亚洲区一区二| 国产日韩精品入口| 亚洲高清在线精品| 国产精品久久久久影院色老大 | av成人天堂| 欧美亚洲视频| 99精品久久久| 欧美一区二视频在线免费观看| 亚洲人成亚洲人成在线观看| 亚洲性感激情| 亚洲精品久久嫩草网站秘色| 亚洲一区二区精品在线| 极品尤物一区二区三区| 中国成人在线视频| 久久岛国电影| 在线一区二区日韩| 亚洲视屏在线播放| 亚洲国内自拍| 国内精品久久久久影院 日本资源| 性色av一区二区三区在线观看 | 亚洲国产精品va| 国产亚洲福利一区| 国产精品系列在线| 国产精品久久久久77777| 欧美人与性动交cc0o| 蜜桃av噜噜一区二区三区| 午夜在线精品偷拍| 欧美一级视频精品观看| 亚洲欧美激情四射在线日| 亚洲一区二区三区涩| 亚洲图片欧美日产| 亚洲欧美日韩国产| 午夜精品视频网站| 性欧美8khd高清极品| 欧美一区2区视频在线观看 | 国产精品一区二区久久久| 国产精品久久久久久久久免费樱桃 | 欧美成人免费一级人片100| 免费观看不卡av| 欧美大片在线看| 最新高清无码专区| 亚洲精品国产精品国自产观看| 日韩视频不卡| 亚洲图片在区色| 性欧美大战久久久久久久免费观看 | 国产日韩精品一区观看| 国产日产欧美精品| 国产一区三区三区| 亚洲激情电影在线| 一区二区激情视频| 西西裸体人体做爰大胆久久久| 久久精品一二三区| 欧美电影专区| 亚洲美女毛片| 午夜精品婷婷| 每日更新成人在线视频| 欧美日韩三级一区二区| 国产欧美日韩另类一区| 在线观看精品一区| 一区二区三区免费网站| 久久国产精品久久w女人spa| 蜜臀久久久99精品久久久久久| 亚洲国产美国国产综合一区二区| 一本色道久久综合狠狠躁篇怎么玩| 亚洲淫性视频| 欧美成人中文字幕| 国产精品日韩二区| 亚洲风情在线资源站| 亚洲视频在线观看一区| 久久伊人精品天天| 亚洲美洲欧洲综合国产一区| 欧美在线视频免费| 欧美日韩午夜在线视频| 黄色精品一区二区| 亚洲无亚洲人成网站77777| 老司机精品视频网站| 在线视频精品一| 欧美 日韩 国产 一区| 在线视频欧美一区| 亚洲视频福利| 欧美ed2k| 国产一区二区三区四区老人| 在线视频一区观看| 欧美freesex交免费视频| 亚洲女人av| 欧美日韩国产在线播放网站| 在线观看的日韩av| 欧美一区二区久久久| 夜夜嗨av一区二区三区中文字幕 | 中文网丁香综合网| 欧美国产视频在线| 在线观看视频一区| 久久狠狠亚洲综合| 亚洲一区三区电影在线观看| 欧美精品色一区二区三区| 伊人久久亚洲影院| 久久久久成人精品| 亚洲欧美在线免费| 国产精品女人网站| 在线一区观看| 亚洲人成网站在线观看播放| 老司机精品视频网站| 怡红院av一区二区三区| 久久免费一区| 久久国产精品亚洲77777| 国产精品一二一区| 欧美在线啊v| 亚洲欧美国产精品专区久久| 欧美婷婷久久| 亚洲午夜电影| 一道本一区二区| 欧美午夜免费| 亚洲一区二区三区四区视频| 99国产精品99久久久久久粉嫩| 欧美激情综合色综合啪啪| 亚洲精选视频在线| 亚洲国产日韩欧美一区二区三区| 免费精品99久久国产综合精品| 亚洲国产精品久久久久秋霞蜜臀 | 亚洲主播在线观看| 国产日韩欧美二区| 久久婷婷成人综合色| 久久久精品一品道一区| 亚洲成人影音|