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

LINGSUIYU'S BLOG

C++博客 聯系 聚合 管理
  2 Posts :: 0 Stories :: 10 Comments :: 0 Trackbacks

        在Efficient C++的第二章,講述了關于繼承和構造(析構)函數造成的計算開銷,仍然有些糊涂。對與以下三段關于互斥鎖使用的代碼(來自Efficient c++):

// Version 1
int main()
{
    
    
// Start timing here
    for(i=0; i<1000000; i++)
    
{
        pthread_mutex_lock(
&mutex);
        shareCounter
++;
        pthread_mutex_unlock(
&mutex);
    }

    
// Stop timing here
    
}

 

// Version 2
int main()
{
    
    
// Start timing here
    for(i=0; i<1000000; i++)
    
{
        SimpleMutex m(mutex);
        sharedCounter
++;
    }

    
// Stop timing here
    
}


class SimpleMutex
{
public:
    SimpleMutex(pthread_mutex_t 
& lock):myLock(lock){acquire();}
    
~SimpleMutex{release();}

private:
    
int acquire(){return pthread_mutex_lock(&myLock);}
    
int release(){return pthread_mutex_unlock(&myLock);}
    pthread_mutex_t 
& myLock;
}
;

// Version 3
int main()
{
    
    
// Start timing here
    for(i=0; i<1000000; i++)
    
{
        DerivedMutex m(mutex);
        sharedCounter
++;
    }

    
// Stop timing here
    
}


class BaseMutex
{
public:
    BaseMutex(pthread_mutex_t 
& lock){};
    Virtual 
~BaseMutex(){};
}
;

class DerivedMutex:public BaseMutex
{
public:
    DerivedMutex(pthread_mutex_t 
&lock):BaseMutex(lock),myLock(lock){acquire();}
    
~DerivedMutex(){release();}

private:
    
int acquire(){return pthread_mutex_lock(&myLock);}
    
int release(){return pthread_mutex_unlock(&myLock);}
    pthread_mutex_t 
& myLock;
}
;

書中測得的結果是Version 1和 Version 2 耗時相同,為1.01s,而Version 3 耗時1.63秒,這說明前兩個版本計算開銷相同而第三個版本計算開銷明顯增加。
        而書中也說了Version 2 的構造函數中,初始化myLock成員是計算損失,當acquire()內聯不成功的時候,調用acquire()也是計算損失。
        再看Version 3,它首先調用基類的構造函數,由于是內聯的,而且函數體為空,其開銷應該忽略不計,然后是初始化myLock,調用acquire(),這些都跟Version 2中一樣。
        這樣看起來反倒是Version 2 和  Version 3 的計算花費應該相同了,而Version 1的計算花費要比它們少。而書上好像沒有對這個問題作出解釋。我不知道是什么地方理解錯誤了,所以先懸著,等找到答案再把它寫完。或者如有看到此文而不吝賜教的,不勝感激!
posted on 2008-08-21 10:09 零碎雨 閱讀(670) 評論(3)  編輯 收藏 引用

Feedback

# re: 關于c++繼承帶來的開銷的疑惑 2008-08-22 00:38 theanswerzju
基類的構造函數明顯不是空的呀 有虛析構函數的 至少還得在構造函數中設置vtable,vptr的呀  回復  更多評論
  

# re: 關于c++繼承帶來的開銷的疑惑 2008-08-22 08:58 零碎雨
@theanswerzju
哦,是的,剛剛學到vtable和vptr,對c++類的內部實現還不是很了解,謝謝您的指出!我仍然有一個疑問,覺得至少Version 2 會比Version 1開銷大一點,因為多了初始化myLock成員,但書上說兩者是一樣的,是不是這個開銷不大可以忽略?  回復  更多評論
  

# re: 關于c++繼承帶來的開銷的疑惑 2008-08-22 17:00 theanswerzju
@零碎雨
你可以對比一下兩者的匯編結果
記得把inline設為允許,VC默認Debug下是關掉的
  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产精品国产精品| 久久视频精品在线| 国产精品丝袜久久久久久app | 久久中文字幕一区| 久久精品国产清高在天天线| 欧美伊人久久大香线蕉综合69| 午夜精品一区二区三区在线| 午夜天堂精品久久久久| 久久精品一本久久99精品| 久久精品国产久精国产爱| 久久九九国产| 欧美日韩国产色站一区二区三区| 欧美性一区二区| 国产欧美精品一区二区三区介绍| 国内成人自拍视频| 亚洲精品乱码久久久久久蜜桃91 | 国产欧美高清| 亚洲国产精品激情在线观看| 9人人澡人人爽人人精品| 欧美有码视频| 亚洲第一在线| 夜夜嗨av色综合久久久综合网| 欧美一二三区在线观看| 久久一区国产| 国产精品男人爽免费视频1| 伊人男人综合视频网| 一区二区日韩精品| 免费成人性网站| 一区二区欧美日韩| 麻豆精品视频在线观看| 国产精品视频专区| 99国内精品| 欧美fxxxxxx另类| 亚洲在线黄色| 欧美日韩在线一区| 亚洲人成高清| 久久一区二区三区av| 亚洲午夜久久久| 欧美精品色网| 91久久精品国产91久久性色tv | 亚洲永久免费视频| 老司机成人网| 亚洲欧美高清| 亚洲精品网站在线播放gif| 欧美一区免费| 国产色综合天天综合网| 宅男噜噜噜66一区二区| 欧美国产视频一区二区| 久久精品国产99精品国产亚洲性色 | 亚洲午夜久久久久久久久电影院| 欧美在线影院在线视频| 99国产精品国产精品毛片| 久久影院亚洲| 激情综合电影网| 久久久噜噜噜久久| 亚洲欧美精品在线观看| 国产精品二区二区三区| 国产精品99久久久久久久久| 亚洲国产成人91精品 | 欧美视频导航| 亚洲最新视频在线播放| 亚洲国产精品视频| 欧美高清视频在线播放| 亚洲高清不卡一区| 欧美激情精品久久久久久变态| 久久久国产精彩视频美女艺术照福利| 国产乱人伦精品一区二区| 羞羞色国产精品| 亚洲一二三区视频在线观看| 国产精品免费一区二区三区观看| 亚洲一区高清| 亚洲欧美激情一区二区| 国产日韩免费| 美女精品视频一区| 欧美国产日本在线| 一区二区三区 在线观看视频| 一区二区三区视频在线播放| 欧美性猛交xxxx乱大交退制版| 亚洲女性喷水在线观看一区| 午夜精品亚洲一区二区三区嫩草| 国产日韩欧美夫妻视频在线观看| 久久亚洲高清| 欧美激情视频免费观看| 亚洲免费视频成人| 久久精品久久综合| 亚洲日本成人网| 亚洲一区视频| 在线视频观看日韩| 亚洲精品自在在线观看| 国产精品永久入口久久久| 久久久综合网站| 欧美日韩成人一区| 在线电影一区| 亚洲欧美另类综合偷拍| 亚洲香蕉在线观看| 亚洲一区二区av电影| 国产亚洲欧美一区在线观看 | 亚洲欧美一区二区三区极速播放| 亚洲一区二区三区中文字幕在线| 久久久xxx| 亚洲女ⅴideoshd黑人| 久久久精品久久久久| 中文欧美字幕免费| 久久九九国产精品怡红院| 一本综合久久| 久久久噜噜噜久噜久久| 亚洲伊人久久综合| 欧美成人日本| 久久精品道一区二区三区| 欧美精品三级日韩久久| 久久在线免费| 欧美午夜精品理论片a级大开眼界 欧美午夜精品理论片a级按摩 | 男女av一区三区二区色多| 亚洲欧美国产77777| 蜜桃av综合| 久久国产精品一区二区三区四区| 欧美精品在线观看播放| 久久综合久色欧美综合狠狠| 欧美日韩精品在线视频| 欧美激情一区在线| 精品51国产黑色丝袜高跟鞋| 亚洲自拍偷拍网址| 一级日韩一区在线观看| 欧美高清视频| 欧美激情亚洲综合一区| 国产综合色产在线精品| 亚洲欧美激情一区| 亚洲欧美日韩中文播放| 欧美色偷偷大香| av成人免费在线观看| 亚洲精品在线三区| 欧美精品成人一区二区在线观看 | 亚洲综合另类| 亚洲调教视频在线观看| 欧美国产一区二区在线观看 | 亚洲女ⅴideoshd黑人| 亚洲免费一区二区| 国产精品大片wwwwww| 亚洲精品一二| 中国亚洲黄色| 欧美日韩午夜在线视频| 日韩视频精品在线观看| 亚洲网站在线播放| 欧美视频一区二区三区…| 一区二区91| 亚洲欧美久久| 国产性猛交xxxx免费看久久| 午夜国产不卡在线观看视频| 欧美中文字幕| 黑人一区二区| 国产三级欧美三级| 亚洲国产婷婷综合在线精品 | 免费高清在线一区| 永久免费精品影视网站| 免费在线观看日韩欧美| 亚洲第一在线| 亚洲伊人久久综合| 国产午夜精品在线| 久久一区亚洲| 99国产精品| 久久动漫亚洲| 亚洲日本中文字幕区| 欧美日韩精品一二三区| 亚洲综合另类| 欧美成在线视频| 国产精品丝袜白浆摸在线| 久久国产精品99国产精| 欧美粗暴jizz性欧美20| 一本一本久久a久久精品综合妖精| 欧美日韩一区自拍| 香蕉久久国产| 亚洲高清资源综合久久精品| 亚洲无毛电影| 亚洲第一综合天堂另类专| 欧美国产日韩精品免费观看| 亚洲一区激情| 欧美波霸影院| 西瓜成人精品人成网站| 亚洲高清视频一区二区| 欧美视频二区| 欧美xart系列在线观看| 亚洲一区二区三区三| 欧美激情第10页| 欧美一区午夜视频在线观看| 亚洲美女诱惑| 国产综合一区二区| 国产精品xxx在线观看www| 久久天堂国产精品| 亚洲在线视频免费观看| 亚洲大片精品永久免费| 欧美一区高清| 亚洲网在线观看| 亚洲缚视频在线观看| 国产精品自拍网站| 欧美日韩国产精品 | 国产精品黄页免费高清在线观看| 久久久www成人免费无遮挡大片| 一区二区欧美亚洲| 亚洲国产精品久久久久| 久久久噜噜噜|