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

            Focus on ACE

            訂閱 ace-china
            電子郵件:
            瀏覽存于 groups.google.com 上的所有帖子

            C++博客 首頁 新隨筆 聯系 聚合 管理
              64 Posts :: 3 Stories :: 22 Comments :: 0 Trackbacks

            *ACE_Message_Block小知識*
            http://spaces.msn.com/stonejiang/blog/cns!A4A8B7175059E42A!273.entry

            ? ** ** ?1 copy() 不需要讓寫指針后移.
            ? ACE_Message_Block* mb = new ACE_Message_Block(BUFSIZ);
            ? mb->copy(buff); //buff先已經初始化
            2 初始化mb后需要后移指針的情況
            ? 2.1
            ? ACE_Message_Block* mb = new ACE_Message_Block(buff,len);
            ? mb->wt_ptr(len); ?//len是buff的長度 len = strlen(buff) +1
            ? ? ? ? ? ? ? ? ? ? // +1 表示后面的\0
            ? 2.2
            ? ACE_Message_Block* mb = new ACE_Message_Block(BUFSIZ);
            ? ACE_OS::sprintf(mb->wt_ptr(),buff);
            ? mb->wt_ptr(len);
            ? 2.3
            ? ACE_Message_Block* mb = new ACE_Message_Block(len,
            ? ? ? ? ? ? ACE_Message_Block::MB_DATA,
            ? ? ? ? ? ? mb2, ? //表示 mb->cont(mb2)
            ? ? ? ? ? ? buff)
            ? mb->wt_ptr(len);
            3.讓消息接成串cont()時,千萬不要直接或接間的把它接成一個環
            ? ?mb->cont(mb2);
            ? ?mb2->cont(mb3); //ok
            ? ?***mb3->cont(mb); ?//死定了
            4.通知其它線程結束時,可以通過ACE_Message_Block::MB_STOP

            ? ACE_Message_Block* lastMsg =ACE_Message_Block ,ACE_Message_Block::MB_STOP)
            ? otherTask->putq(lastMsg);

            ? otherTask在接收到的時候如下處理

            ?

            ??? int ?OtherTask::svc()?
            ???
            {?
            ??????????ACE_Message_Block
            * ?mb;?
            ???????????
            while ( 1 )?
            ???????????
            {?
            ?????????????getq(mb);?
            ????????????
            if (mb -> get_tpye()? == ?ACE_Message_Block::MB_STOP)?
            ???????????
            {?
            ??????????????mb
            -> release();?
            ??????????????
            break ;? // 退出這個永久限環)?
            ???????????}
            ?
            ???????????
            else ?
            ???????????
            {?
            ??????????????handle_message(mb);?
            // 處理這條消息?
            ???????????}
            ?
            ???
            return ? 0 ;?


            ????}
            ?


            ?

            --
            Stone Jiang

            posted on 2006-04-12 15:48 Stone Jiang 閱讀(1185) 評論(0)  編輯 收藏 引用 所屬分類: ACE
            日本欧美国产精品第一页久久| 欧美久久综合性欧美| 久久久久99这里有精品10| 香蕉久久夜色精品国产2020| 亚洲精品无码久久久久久| 国产成人久久精品一区二区三区| 久久精品国产秦先生| 久久午夜夜伦鲁鲁片免费无码影视| 久久久国产视频| 精品熟女少妇aⅴ免费久久| 亚洲国产精品成人久久| 久久国产精品国语对白| 伊人久久综合无码成人网| 91亚洲国产成人久久精品网址| 国内精品伊人久久久久妇| 国产精品九九久久免费视频| 久久久久av无码免费网| 久久久久亚洲AV无码专区网站| 国产精品一久久香蕉产线看| 婷婷久久五月天| 久久本道久久综合伊人| 亚洲午夜久久久精品影院| 久久婷婷成人综合色综合| 久久天天躁狠狠躁夜夜2020一| 久久精品国产99久久丝袜| 国产69精品久久久久777| 久久人人爽人人爽人人片AV不| 欧美亚洲国产精品久久| 国产精品无码久久四虎| 久久精品中文字幕久久| 色偷偷888欧美精品久久久| 人妻精品久久无码区| 2020久久精品亚洲热综合一本 | 亚洲精品成人网久久久久久| 亚洲一区二区三区日本久久九| 69久久精品无码一区二区| 精品国产乱码久久久久久1区2区 | 亚洲综合熟女久久久30p| 97精品依人久久久大香线蕉97| 亚洲精品无码成人片久久| 亚洲国产另类久久久精品|