• <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>

            勤能補拙,Expter

            成都游戲Coder,記錄游戲開發過程的筆記和心得!

            一個關于vector在讀取和壓入技巧性的效率優化

                     在多線程過程中,對于線程間的數據共享同步問題,具體針對多線程需要對一個Vector進行讀與寫的操作,不考慮緩沖區的操作,一般情況下為了保證穩定性的同時在讀寫的時候都要進行加鎖,其實可以通過一個技巧,就是通過一個臨時變量在寫數據的時候把第一個值付給臨時變量,那么在讀取數據的線程中會直接讀取臨時變量,此時只需要加鎖一次即可。



                     我寫了一個測試例子,就是關于開3個讀,寫,刪的操作。。。一般情況進行加鎖,與通過通過臨時變量來減少一次加鎖速度與效率明顯低于后者。
                     針對1000000個數據的操作,操作1比操作2快2倍以上。


                     下面是我的測試代碼,簡單。。。只是為了說明問題
                     
            /Files/expter/l_thread.rar
                    

            posted on 2009-08-14 23:52 expter 閱讀(2249) 評論(5)  編輯 收藏 引用

            評論

            # re: 一個關于vector在讀取和壓入技巧性的效率優化 2009-08-15 01:47 pear_li

            說實話,樓主這個想法不怎么樣
            看過你的代碼就更加確信了這一想法
            理由如下:
            既然要滿足讀寫,就要考慮讀寫值的實時,臨時變量本身就不能確保當前讀寫值的實時性(且不說樓主對tmp和flag的操作連最基本的volatile都沒有加),你的想法只是考慮變量讀寫的安全性,而忽略實時性

            公認比較安全快速的做法:使用共享鎖,提高讀取效率

              回復  更多評論   

            # re: 一個關于vector在讀取和壓入技巧性的效率優化 2009-08-15 06:38 空明流轉

            樓主的思路,和Lock-free有點接近,建議去參考一下。。。  回復  更多評論   

            # re: 一個關于vector在讀取和壓入技巧性的效率優化 2009-08-15 16:42 expter

            @pear_li
            我只是 為了說明這樣一個方法,可能在有些地方效率會更低,而且程序我只是一個為了測試而已,估計沒有考慮跟多,謝謝指出。  回復  更多評論   

            # re: 一個關于vector在讀取和壓入技巧性的效率優化 2009-08-15 16:53 李侃

            同意2樓,共享資源傳統的方式最好使用共享鎖和排他鎖,分而治之,可以參考讀寫鎖的實現方法win32下單進程內建議使用用戶模式,interlock系列函數足以

            鎖無關數據結構我還沒找到很好的解決方案  回復  更多評論   

            # re: 一個關于vector在讀取和壓入技巧性的效率優化 2009-08-20 21:28 hlysh

            常常關注你的blog,每篇文章都很好支持!  回復  更多評論   

            国产免费福利体检区久久 | 久久精品亚洲精品国产色婷| 一级做a爰片久久毛片16| 国产精品久久久久久久久| 99久久国产免费福利| 久久精品aⅴ无码中文字字幕不卡| 伊人久久大香线焦AV综合影院| 久久国产精品无码HDAV| 亚洲精品视频久久久| 精品国产福利久久久| 久久久久免费精品国产| 99久久久久| 久久99精品久久久久久动态图| 久久国产精品一区| 久久成人国产精品二三区| 亚洲va久久久噜噜噜久久天堂| 午夜视频久久久久一区| 丁香五月综合久久激情| 99麻豆久久久国产精品免费 | 77777亚洲午夜久久多喷| 国产福利电影一区二区三区久久老子无码午夜伦不| 久久久久国产一区二区| 日本精品久久久中文字幕| 久久婷婷五月综合色高清| 久久综合综合久久狠狠狠97色88| 国产精品永久久久久久久久久 | 久久久久一区二区三区| 伊人伊成久久人综合网777| 国产69精品久久久久9999| 99久久99久久| 亚洲国产精品热久久| 久久久久久a亚洲欧洲aⅴ| 91精品国产乱码久久久久久| 久久国产精品成人影院| 日韩精品久久久久久久电影蜜臀| 狠狠综合久久综合88亚洲| 无码国内精品久久综合88| 狠狠色噜噜色狠狠狠综合久久 | 亚洲AV乱码久久精品蜜桃| 国产成人精品三上悠亚久久| 99久久精品免费看国产一区二区三区|