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

            1、單線程內存池

             

            內存池的基本思想是大塊向系統申請內存,內部切割為小塊,內部cache之后有選擇的分配,不夠的時候繼續向系統大塊申請內存,示例代碼如下:

             

            struct tm_memblock

            {

                    tm_memblock *next;

            };

            class tm_pool

            {

                    tm_bufunit *next;           //pool中自由塊鏈

                    tm_memblock *mbk;              //trunk

            };

             

            void *tm_pool::newobj()

            {

                    if(! next)

                    {

                            expand();

                    }

                    tm_bufunit *head = next;

                    next = head->next;

                    return (void *)head;

            }

             

            void tm_pool::delobj(void *pbuf)

            {

                    tm_bufunit *head = (tm_bufunit*)(pbuf);

                    head->next = next;

            next = head;

            }

            詳細實現建議看云風的內存池,我也不過是學習了它的實現而已。

            不要小看了單線程內存池,它是我們走向更復雜應用的基礎,它是我們后面提及的多線程內存池以及線程關聯內存池的基礎。

            這種單線程的內存池分配釋放速度是很快的,dlmalloc更快近1倍,大約相當于malloc/free50-100(具體倍率視分配的大小而不同,分配小塊倍率小,分配大塊倍率大)

             

            有的朋友可能會考慮使用std::list之類的東西來構建內存池,我奉勸有這種想法的人打住,std::list是效率很低的,此外用一個高層的東西構建底層模塊,總體上屬于本末倒置。

            Posted on 2010-10-03 13:51 袁斌 閱讀(350) 評論(0)  編輯 收藏 引用
            91久久精品91久久性色| 一本综合久久国产二区| 99久久国产综合精品五月天喷水 | 国内精品久久久久影院网站| 免费无码国产欧美久久18| 婷婷综合久久狠狠色99h| 久久精品国产久精国产果冻传媒| 99久久国产免费福利| 久久亚洲中文字幕精品一区| 国产精品久久久久…| 久久人与动人物a级毛片| 伊人久久综在合线亚洲2019| 一本色道久久88—综合亚洲精品| 伊人色综合久久天天网| 丁香五月网久久综合| 久久精品中文无码资源站| 国产福利电影一区二区三区久久老子无码午夜伦不 | 日韩乱码人妻无码中文字幕久久 | 狠色狠色狠狠色综合久久| 人妻无码αv中文字幕久久琪琪布| AA级片免费看视频久久| 精品国产乱码久久久久久郑州公司| 久久一日本道色综合久久| 久久久久国产精品麻豆AR影院 | 品成人欧美大片久久国产欧美| 久久久婷婷五月亚洲97号色| 久久国产精品久久久| 精品国产VA久久久久久久冰| 亚洲AV日韩精品久久久久| 久久精品国产99国产精品澳门 | 亚洲国产天堂久久综合网站| 东京热TOKYO综合久久精品 | 久久受www免费人成_看片中文| 性欧美丰满熟妇XXXX性久久久 | 日本久久久精品中文字幕| 国产精品久久久福利| 久久777国产线看观看精品| 久久精品国产99久久无毒不卡| 欧美牲交A欧牲交aⅴ久久| 国产aⅴ激情无码久久| 久久中文骚妇内射|