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

天下

記錄修行的印記

STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法

 

主線程M
數(shù)據(jù)D:map
<int,std::string>
全局變量bool:IsModified
線程B負(fù)責(zé)更新D,D更新時(shí),并負(fù)責(zé)修改全局IsModified 為true
工作線程:A,只進(jìn)行讀數(shù)據(jù)D,不進(jìn)行寫操作.

線程A偽代碼如下:
while(1){
    map
<int,std::string> *pData;
    if (IsModified){
        pData 
= GetData();
       
//重新獲取新數(shù)據(jù)
    }
    //迭代pData
    //do something
    Sleep(1);
}


//這樣就不需要使用臨界區(qū)了
//個(gè)人想法,歡迎拍磚.

posted on 2011-03-19 14:42 天下 閱讀(7122) 評(píng)論(11)  編輯 收藏 引用

評(píng)論

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法[未登錄](méi) 2011-04-25 16:50 kenshin

這個(gè)不行的啊
IsModified = ture
map: push map

是兩條語(yǔ)句不是一個(gè)原子操作了

比如走 到
IsModified = ture 的時(shí)候
兩個(gè)線程都到下一句
1. map:push map
2. pData = GetData();
就2了啊。 你這樣做是可以減少發(fā)生的幾率 ,但是出問(wèn)題了 調(diào)試起來(lái)更加惱火  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2011-05-03 09:18 天下

@kenshin

說(shuō)的很好,謝謝.


補(bǔ)充下:
線程B負(fù)責(zé)更新D,D更新時(shí),并負(fù)責(zé)修改全局IsModified 為true

這個(gè)改成:
線程B負(fù)責(zé)更新D,D更新后,并負(fù)責(zé)修改全局IsModified 為true

GetData();是從數(shù)據(jù)庫(kù)或文件獲取.
這樣就可以了吧.
  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2011-05-03 15:47 溪流

@天下
還是不可以。

1、如果GetData是從數(shù)據(jù)庫(kù)或者文件獲取,那么線程安全的責(zé)任被轉(zhuǎn)嫁到了相關(guān)的IO層面;如果是放在內(nèi)存中,那么這里你還是需要解決線程安全問(wèn)題。

2、你的 IsModified 變量的改變,也不具有原子性。當(dāng)數(shù)據(jù)源更新后,可能在你試圖將 IsModified 改為 True 的同時(shí),線程 A 已經(jīng)讀到了舊的 False 值。

其實(shí),特征很好找,保證線程安全必須有具備原子操作特征的玩意兒出現(xiàn),如 Windows 下的 CriticalSection、InterlockedIncrement 等等;如果沒(méi)有,你就沒(méi)法保證。  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2011-05-03 16:38 天下

@溪流

呵呵,非常同意你的回復(fù)

說(shuō)下要求背景吧,應(yīng)用場(chǎng)影實(shí)時(shí)性要求不高,比如說(shuō)線程B只是更新了配置文件.
線程A然后重新獲取而已.



  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2011-05-03 16:43 溪流

@天下
這不是能被說(shuō)成“實(shí)時(shí)性高不高”的,只有兩種情形:1、需要線程安全;2、不需要線程安全。不存在兩者之間的模糊界限,否則,即使是你認(rèn)為的是實(shí)行不高的場(chǎng)景,在用戶那里一定會(huì)出現(xiàn)你預(yù)料之外的情況。  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2011-05-03 18:32 天下

@溪流

還真較真啊,治學(xué)態(tài)度很嚴(yán)謹(jǐn)
學(xué)術(shù)確實(shí)需要這樣.

不過(guò),就線程安全來(lái)說(shuō),這只是個(gè)概念的理解而已.所以造成不同的觀念.呵呵.



  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2011-05-03 20:37 溪流

@天下
哎,,我說(shuō)的不是學(xué)術(shù)上的,而是工程上的。
學(xué)術(shù)上倒是可以假定某個(gè)操作是原子的,就可以了;假定實(shí)時(shí)性“不高”也可以。。。  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2011-05-04 18:42 天下

@溪流

歡迎加QQ群:88028655   回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2012-02-10 09:56 Mr.CT

不行的哦。想法過(guò)于簡(jiǎn)單!  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2012-02-10 13:14 天下

@Mr.CT

確實(shí)不行,
以前理解有誤.

  回復(fù)  更多評(píng)論   

# re: STL中map,vector等線程安全一個(gè)簡(jiǎn)單的個(gè)人想法 2016-03-20 11:21 Allen

看到樓主在進(jìn)步了...
這樣確實(shí)不可以...
需要鎖之類的  回復(fù)  更多評(píng)論   


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


<2010年10月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

導(dǎo)航

統(tǒng)計(jì)

常用鏈接

留言簿(4)

隨筆分類(378)

隨筆檔案(329)

鏈接

最新隨筆

搜索

最新評(píng)論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            99在线|亚洲一区二区| 欧美激情视频网站| 亚洲国产精品一区二区尤物区| 亚洲视频一二区| 亚洲五月婷婷| 欧美一级片在线播放| 久久岛国电影| 欧美激情91| 在线一区亚洲| 久久久久久久久久久久久女国产乱| 久久精品国产亚洲aⅴ| 另类亚洲自拍| 国产精品vvv| 黄色成人av在线| 亚洲伦理一区| 性欧美超级视频| 欧美激情久久久久| 亚洲性图久久| 欧美成人精品h版在线观看| 欧美视频中文字幕| 怡红院精品视频| 亚洲女性喷水在线观看一区| 免费亚洲一区二区| 亚洲一区日韩| 欧美精品一级| 一区二区三区在线不卡| 亚洲午夜一二三区视频| 美女成人午夜| 亚洲欧美日韩精品久久奇米色影视| 美女精品网站| 一区二区三区在线视频播放| 亚洲无线观看| 亚洲缚视频在线观看| 欧美在线欧美在线| 国产精品久久久久久久电影| 亚洲国产精品成人综合| 久久精品人人爽| 在线综合+亚洲+欧美中文字幕| 美女免费视频一区| 国内精品久久久| 午夜免费电影一区在线观看| 亚洲毛片在线看| 欧美成人免费全部| 在线观看中文字幕亚洲| 久久久伊人欧美| 亚洲女女女同性video| 欧美日韩在线播放三区| 亚洲精品国产日韩| 亚洲第一页在线| 久久一区精品| 在线国产日韩| 欧美一区免费视频| 国产精品一级在线| 亚洲欧洲日产国码二区| 裸体一区二区| 久久综合国产精品| 在线观看亚洲视频| 美女成人午夜| 欧美大片18| 夜夜狂射影院欧美极品| 亚洲成色777777在线观看影院| 久久精品国产亚洲精品 | 麻豆91精品| 欧美亚洲一区| 黄色欧美日韩| 欧美国产欧美亚洲国产日韩mv天天看完整| 欧美在线不卡视频| 亚洲国产裸拍裸体视频在线观看乱了中文 | 欧美人妖另类| 中文精品视频一区二区在线观看| 亚洲人成欧美中文字幕| 欧美理论大片| 亚洲欧美在线x视频| 欧美一级片一区| 激情视频一区二区三区| 欧美激情亚洲精品| 欧美日韩在线不卡| 久久精品免视看| 美女视频网站黄色亚洲| 在线视频亚洲欧美| 亚洲欧美日本日韩| 亚洲福利小视频| 亚洲靠逼com| 国产香蕉久久精品综合网| 美女网站久久| 欧美色图天堂网| 久久亚洲春色中文字幕| 欧美人与性动交a欧美精品| 午夜久久久久| 欧美成熟视频| 午夜一级久久| 蜜臀av性久久久久蜜臀aⅴ| 亚洲一区二区三区涩| 久久精品人人做人人爽电影蜜月| 亚洲欧洲综合另类在线| 亚洲综合激情| 一区二区三区精品久久久| 午夜精品久久久久久久99黑人| 亚洲高清视频在线| 亚洲天堂免费观看| 亚洲欧洲在线视频| 久久国产婷婷国产香蕉| 中国日韩欧美久久久久久久久| 亚洲精品久久久久中文字幕欢迎你 | 欧美电影免费观看高清完整版| 亚洲女性裸体视频| 亚洲韩日在线| 99国产精品自拍| 一区二区在线观看av| 亚洲视频在线一区| 亚洲精品视频在线观看网站| 欧美一区二区在线播放| av不卡在线| 鲁大师成人一区二区三区 | 亚洲一区二区三区三| 欧美成人伊人久久综合网| 久久久久久久久久久久久9999| 欧美视频不卡| 亚洲欧洲一区二区天堂久久 | 欧美电影在线播放| 久久中文字幕一区| 国产亚洲欧美一区| 亚洲一区二区三区国产| 9久re热视频在线精品| 另类激情亚洲| 亚洲成人资源网| 亚洲国产日韩欧美| 免费观看一级特黄欧美大片| 美国十次成人| 在线观看欧美日韩国产| 久久综合九色综合网站| 蜜桃久久av一区| 狠狠色狠狠色综合日日tαg| 午夜影视日本亚洲欧洲精品| 欧美有码在线观看视频| 国产精品久久久免费| 中日韩高清电影网| 亚洲综合视频1区| 国产精品久久久一区二区| 中文一区在线| 久久av一区二区| 国模私拍一区二区三区| 久久国产欧美| 欧美刺激性大交免费视频| 亚洲激情在线激情| 欧美成人视屏| 亚洲另类黄色| 亚洲欧美日韩一区二区| 国产视频久久久久久久| 久久久久久久综合| 亚洲国产精品第一区二区| 亚洲最快最全在线视频| 国产精品国产自产拍高清av王其| 亚洲午夜精品一区二区| 久久视频国产精品免费视频在线| 韩日成人av| 欧美成人精品激情在线观看| 亚洲精品婷婷| 欧美影院在线| 亚洲精品视频在线看| 国产精品扒开腿做爽爽爽软件 | 亚洲国产欧美在线人成| 一区二区三区视频免费在线观看| 国产精品久久一卡二卡| 欧美一级成年大片在线观看| 欧美91福利在线观看| 一区二区三区四区蜜桃| 久久精品一区蜜桃臀影院| 亚洲激情视频在线| 欧美日韩久久| 久久国产精品亚洲77777| 亚洲欧洲日本国产| 久久精品国产第一区二区三区| 一区二区在线观看视频在线观看| 欧美日韩精品福利| 久久精品人人爽| 亚洲一区二区三区久久 | 在线亚洲欧美| 美女诱惑一区| 午夜精品成人在线| 在线观看不卡| 国产精品视频自拍| 欧美精品videossex性护士| 午夜国产精品影院在线观看| 亚洲黄色免费| 美女视频网站黄色亚洲| 欧美一区免费视频| 日韩午夜激情电影| 在线不卡a资源高清| 国产精品日韩欧美综合| 欧美精品18videos性欧美| 久久精品中文| 午夜精品视频在线| 亚洲一区二区三区精品动漫| 亚洲精品欧美激情| 亚洲国产精品视频| 欧美激情第一页xxx| 免费观看亚洲视频大全| 久久精品观看| 久久本道综合色狠狠五月|