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

Focus on ACE

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

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

關于ACE_Task::last_thread()

在ACE應用中,我們經常用ACE_Task類實現多線程處理。由于ACE_Svc_Handler從ACE_Task派生,當你寫的應用程序使用了Acceptor-Connector框架同時又直接使用ACE_Task,如線程池,這時你會使用到ACE_Task。
因為許多ACE_Task對應是動態分配的,所以,必須在不再需要時把它們正確地釋放掉,知道何時可以釋放對象,這一點非常重要。C++NPv2第189頁描述了當多線程涉及到的task對象在它們退出時,使用ACE_Task::thr_count()方法確定正確釋放它們的方法。

在C++NPv2文檔中描述的過程并不不安全,這里有一個用例可以說明這一點。原因如下:

ACE在調用ACE_Task::close()掛鉤(hook)函數前檢查線程計數。

線程鎖(task thread)使控制線程計數順序化,所以不能通過調用ACE_Task::close()達到控制線程數這一目的,這是因為關閉掛勾(close hook)方法會刪除task 對象。因此,多個線程檢查ACE_Task:: thr_count()的值都為0是可能存在的。

舉例來說吧,我們假設這里有兩個線程,A和B,這給都要退出。線程A從svc()方法中退出控制,同時,ACE開始線程記錄保護(record-keeping)。ACE獲得線程鎖并把活動線程數從2減為1,接著,ACE釋放線程鎖并調用task的close()掛鉤方法。其間,線程B也從svc()方法中退出。在線程A檢查ACE_Task::thr_count()之前,ACE已執行線程B的清楚操作可能導致task的線程計數器從1變為0.如果那樣,線程A和B都會看到線程計數器為0,并都試圖清理task對象。這一點肯定不是好事.......

發現并指出這一問題是一位長時間使用ACE的用戶,Howard Finer,經過一些迭代和試驗Howard找到一個解決這一問題的辦法,即額外的維護線程計數器,記住到底是哪一個線程真實的把線程計數器從1變為0,(上述例子中的線程B)。這就要求ACE_Task增加一個新的方法 :
ACE_thread_t ACE_Task::last_thread (void) const
所以,在你的代碼實現ACE_Task::close()時需要包含如下的檢查

if (ACE_OS::thr_equal (ACE_Thread::self (),
?????????????????????? this->last_thread ()))
? {
??? // Do the cleanup here...
? }


這個方法可能會出現在ACE 5.5.2中。

posted on 2006-06-30 12:30 Stone Jiang 閱讀(1377) 評論(0)  編輯 收藏 引用 所屬分類: ACE
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久国产免费看| 99精品免费| 免费欧美日韩国产三级电影| 亚洲欧美日本在线| 亚洲另类自拍| 亚洲级视频在线观看免费1级| 亚洲一区二区三区成人在线视频精品 | 日韩午夜三级在线| 欧美α欧美αv大片| 久久精品夜色噜噜亚洲aⅴ| 午夜国产精品视频| 亚洲欧洲av一区二区三区久久| 一本色道久久88综合日韩精品| 亚洲精品系列| 一区二区三区偷拍| 亚洲一区二区三区在线观看视频 | 宅男噜噜噜66国产日韩在线观看| 亚洲片在线观看| 精品99一区二区| 国产麻豆精品theporn| 欧美色道久久88综合亚洲精品| 欧美激情在线狂野欧美精品| 欧美二区乱c少妇| 欧美日韩免费高清一区色橹橹| 久久久久久久久久久一区| 久久久人成影片一区二区三区观看| 久久久免费精品| 欧美精品97| 欧美黄色免费| 国产精品jizz在线观看美国 | 欧美高清在线一区二区| 欧美久久在线| 国产欧美韩国高清| 亚洲国产成人久久综合| 99国内精品久久| 欧美一区二区精品久久911| 亚洲一区欧美二区| 在线视频精品| 久久精品中文字幕免费mv| 欧美激情在线有限公司| 亚洲欧美制服另类日韩| 欧美91大片| 亚洲国产欧美一区二区三区同亚洲| 一区二区欧美精品| 欧美一区二区| 欧美激情一二三区| 亚洲欧美国产视频| 欧美福利视频在线观看| 国产精品亚洲人在线观看| 亚洲国产成人91精品| 亚洲一区免费观看| 欧美成人亚洲成人日韩成人| 一本色道久久88综合日韩精品| 欧美在线视频免费观看| 欧美日韩福利| 亚洲电影免费观看高清完整版| 午夜精品一区二区三区在线播放 | 欧美中文在线观看| 亚洲高清三级视频| 久久国产精品亚洲va麻豆| 欧美激情一区二区三区四区| 国产亚洲女人久久久久毛片| 亚洲人成精品久久久久| 亚洲精品一区二区在线观看| 亚洲欧美日韩一区在线| 亚洲精品免费看| 乱中年女人伦av一区二区| 国产欧美精品日韩精品| 亚洲第一精品夜夜躁人人躁| 亚洲欧美综合| 蜜臀99久久精品久久久久久软件| 亚洲婷婷国产精品电影人久久| 欧美成人综合一区| 韩日精品在线| 亚洲色诱最新| 美女主播精品视频一二三四| 99国产麻豆精品| 欧美国产视频日韩| 性欧美8khd高清极品| 欧美三级在线| 午夜在线一区| 欧美一区二区视频在线观看| 国产免费亚洲高清| 亚洲特级片在线| 亚洲精品一区二区三区福利| 欧美日韩成人精品| 亚洲天堂偷拍| 日韩一区二区福利| 欧美日韩国产亚洲一区| 中文久久精品| 亚洲视频一区二区在线观看 | 免费不卡在线观看| 欧美1区2区视频| 在线日韩中文字幕| 国产欧美另类| 久久精品国产亚洲一区二区三区| 亚洲激情午夜| 麻豆精品一区二区综合av| 国产亚洲精品久久久久动| 亚洲亚洲精品三区日韩精品在线视频| 91久久精品国产91性色| 欧美日韩精品在线播放| 在线欧美小视频| 久久亚洲欧美| 欧美影院成人| 韩国在线一区| 久久综合九色| 久久亚洲精品一区| 夜夜夜精品看看| 欧美激情视频一区二区三区不卡| 香蕉av福利精品导航| 欧美日韩一区二区三区| 一区二区国产日产| 亚洲午夜激情| 国产一区二区精品在线观看| 欧美一区二区高清| 欧美专区日韩专区| 亚洲精品国精品久久99热| 亚洲天堂免费观看| 国产午夜精品一区二区三区视频| 欧美/亚洲一区| 欧美视频免费| 欧美a级在线| 国产精品美女主播| 欧美国产亚洲视频| 国产亚洲第一区| 亚洲经典在线看| 黄色成人精品网站| 99精品久久久| 最新国产乱人伦偷精品免费网站| 国产精品99久久99久久久二8| 精品av久久久久电影| 99精品99久久久久久宅男| 国产精品二区三区四区| 欧美肥婆在线| 国产精品久久91| 久久精品国产久精国产思思| 欧美另类videos死尸| 久久频这里精品99香蕉| 欧美韩日一区二区| 老司机精品视频一区二区三区| 欧美国产极速在线| 久热精品在线| 欧美日韩亚洲精品内裤| 亚洲第一精品电影| 国产精品亚洲人在线观看| 狂野欧美激情性xxxx欧美| 久久嫩草精品久久久精品| 午夜日韩av| 国产精品入口夜色视频大尺度| 亚洲黑丝在线| 亚洲免费电影在线观看| 毛片基地黄久久久久久天堂| 久久精品日韩欧美| 国产美女在线精品免费观看| 亚洲少妇自拍| 一本色道久久| 久久国产精品久久w女人spa| 国产精品成人一区二区| 99在线精品视频| 一本一本a久久| 欧美国产精品v| 亚洲精品免费在线| 一区二区不卡在线视频 午夜欧美不卡在 | 久久久青草婷婷精品综合日韩| 欧美在线观看网站| 欧美精品www| 日韩一区二区高清| 一区视频在线播放| 香蕉av福利精品导航| 亚洲一二三区在线观看| 欧美性猛交xxxx乱大交退制版 | 久久激情视频免费观看| 国产亚洲毛片| 裸体一区二区三区| 亚洲人精品午夜| 亚洲一区在线视频| 国产麻豆一精品一av一免费| 久久国产视频网站| 亚洲国产网站| 亚洲欧美一区二区原创| 国产精品自拍一区| 久久精品免视看| 亚洲第一精品夜夜躁人人爽| 一区二区久久久久久| 国产欧美va欧美va香蕉在| 久久久水蜜桃| 一区二区三区视频在线 | 久久亚洲色图| 久久噜噜噜精品国产亚洲综合| 在线看视频不卡| 欧美激情中文不卡| 亚洲欧美日韩一区二区在线 | 久久久www| 91久久精品国产91性色| 国产综合久久| 欧美色视频在线| 蜜臀va亚洲va欧美va天堂 | 欧美日韩免费观看中文| 美女啪啪无遮挡免费久久网站|