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

            C++ Space

            C++, 3DGame

            ACE_CDR::mb_align(ACE_Message_Block * mb)使用問題

            ACE_CDR::mb_align(ACE_Message_Block * mb)用于對齊mb內(nèi)部數(shù)據(jù)塊ACE_Data_Block所擁有的內(nèi)存的起始地址,它的實(shí)現(xiàn)大致如下:

            void
            ACE_CDR::mb_align?(ACE_Message_Block?
            * mb)
            {
            ??char?
            * ? const ?start? = ?ACE_ptr_align_binary(mb -> base?(),???ACE_CDR::MAX_ALIGNMENT);

            ??mb
            -> rd_ptr?(start);
            ??mb
            -> wr_ptr?(start);
            }

            由于要執(zhí)行內(nèi)存地址對齊,那么mb->base()所指示的地址可能需要向后移動(dòng)(MAX_ALIGMENT - mb->base() % MAX_ALIGMENT)個(gè)字節(jié)。但在這個(gè)之后,mb->base()指向的可用內(nèi)存將比它自己薄記的少,如果需要程序正常運(yùn)行,那么依賴于在往它寫入數(shù)據(jù)時(shí),寫入的字節(jié)數(shù)不能大于實(shí)際大小(這個(gè)實(shí)際大小為 :mb的薄記大小-移動(dòng)的距離),而這需要由程序員來控制,容易出錯(cuò)也就難免了。

            也許可以在函數(shù)mb_align內(nèi)部重設(shè)mb的大小,使其薄記大小與實(shí)際有效內(nèi)存大小相符,但這引起內(nèi)存拷貝,這個(gè)代價(jià)也太大了。

            內(nèi)存對齊的處理似乎應(yīng)該在內(nèi)存分配階段,比如提供類似下面的分配已對齊地址功能的分配器:

            struct?Align_Alloc
            {
            ????void?
            * ?align_alloc(size_t?size,?unsigned?align)
            ????{
            ????????void?
            * ?ptr? = ? new ?char[size? + ?align];
            ????????return?align_mb_ptr(ptr,?align);
            ????}
            };

            但ACE實(shí)際上沒這么做,它提供mb_align這個(gè)與內(nèi)存分配毫不相干的功能,且希望由程序員自己來解決可能引發(fā)的問題!~
            ?

            posted on 2007-03-09 15:33 Kooyu 閱讀(1602) 評論(0)  編輯 收藏 引用


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


            一本色道久久HEZYO无码| 久久美女人爽女人爽| 国产精品99久久久久久宅男小说| 午夜精品久久久久久久久| 久久天天躁狠狠躁夜夜avapp | 日本精品久久久久久久久免费| 精品久久人妻av中文字幕| 国产精品九九久久免费视频| 久久久国产打桩机| 国产精品99久久久久久www| 久久亚洲美女精品国产精品| 久久免费观看视频| 国产亚洲欧美成人久久片| 日本高清无卡码一区二区久久| 精品久久久久久久国产潘金莲| 人妻精品久久久久中文字幕69 | 久久大香香蕉国产| 亚洲精品tv久久久久久久久久| 久久久久久久免费视频| 久久精品国产亚洲AV不卡| 久久中文娱乐网| 无码人妻久久一区二区三区| 国产99久久久国产精品小说| 国产精品欧美久久久久天天影视| 一本大道久久东京热无码AV| 色综合久久综合网观看| www久久久天天com| 久久精品亚洲一区二区三区浴池| 久久精品亚洲福利| 九九久久精品无码专区| 亚洲国产精品久久久久婷婷老年| 久久综合久久综合亚洲| 亚洲精品成人网久久久久久| 国产激情久久久久影院小草| 久久AⅤ人妻少妇嫩草影院| 国产精品无码久久综合网| 国产综合精品久久亚洲| 久久强奷乱码老熟女| 亚洲午夜久久久| 久久久久精品国产亚洲AV无码| 国产精品久久自在自线观看|