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

一動不如一靜

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

?

/* *******************************************************************
*?Copyright?(c)?2006,study-record?home
*?All?rights?reservered.
*
*?文件名稱?:?littersize.cpp?
*?摘????要?:?這個例子主要是用來驗證這樣一個問題。當我們程序中有n個reactor的時候,是否就意味著我們支持n*FD_SETSIZE連接.
???????????????????為了驗證這個問題,我們傳遞一個大小為2的值給ACE_Select_Reactor的構造函數。看是否是只支持2個連接?
???????????????????驗證結果表明:在本例子中,由于acceptor注冊用掉了一個,而我們給定的最大的handle數為2,所以只能接受一個連接。
???????????????????在命令行下輸入:telnet?127.0.0.1?1234?,在我們第二次輸入時,
???????????????????在調用int?nRet?=?m_Reactor->register_handler(pEvent,?ACE_Event_Handler::READ_MASK);的時候一定會失敗。
???????????????????但是在命令行下輸入:telnet?127.0.0.1?2345?,在我們第三次輸入的時候,調用register_handler的時候才會失敗
???????????????????但是這樣的一段代碼存在高cpu的問題,也就是當把客戶端關調的時候,cpu占用率會很高?想想看,為什么呢?
???????????????????本代碼只是為了驗證一些東西,有很多不合理的地方,請務仿照。
*
*?當前版本?:?1.0
*?作????者?:?study-record???2007-2-22
*
********************************************************************
*/


#include?
" ace/Thread_Manager.h "
#include?
" ace/Select_Reactor.h "
#include?
" ace/Reactor.h "
#include?
" ace/Event_Handler.h "
#include?
" ace/SOCK_Acceptor.h "
#include?
" ace/SOCK_Stream.h "
#include?
" ace/INET_Addr.h "

const ?size_t?g_unOneMaxHandle? = ? 2 ;
const ?size_t?g_unTwoMaxhandle? = ? 4 ;


static ?ACE_THR_FUNC_RETURN?event_loop_one?( void ? * arg)?
{
????ACE_Reactor?
* reacator? = ?static_cast < ACE_Reactor? *> (arg);

????reacator
-> owner(ACE_Thread::self());
????reacator
-> run_reactor_event_loop();
????
return ? 0 ;

}

static ?ACE_THR_FUNC_RETURN?event_loop_two?( void ? * arg)?
{
????ACE_Reactor?
* reacator? = ?static_cast < ACE_Reactor? *> (arg);

????reacator
-> owner(ACE_Thread::self());
????reacator
-> run_reactor_event_loop();
????
return ? 0 ;
}


class ?TestHandleEvent:? public ?ACE_Event_Handler
{
public :
????
virtual ? int ?handle_input?(ACE_HANDLE?fd? = ?ACE_INVALID_HANDLE)
????
{
????????ACE_DEBUG((LM_DEBUG,?
" TestHandleEvent::handle_input\n " ));
????????
return ? 0 ;
????}
;
????
virtual ? int ?handle_close?(ACE_HANDLE?handle,?ACE_Reactor_Mask?close_mask)
????
{
????????
????????ACE_DEBUG((LM_DEBUG,?
" TestHandleEvent::handle_close\n " ));
????????delete?
this ;
????????
return ? 0 ;

????}
;
????ACE_HANDLE?get_handle(
void )? const ?
????
{
????????
return ?peer.get_handle();
????}


public :
????ACE_SOCK_Stream?peer;

}
;
class ?TestAcceptor?:? public ?ACE_Event_Handler
{
public :
????
virtual ? int ?handle_input?(ACE_HANDLE?fd? = ?ACE_INVALID_HANDLE)
????
{
????????
????????TestHandleEvent
* ?pEvent? = ? new ?TestHandleEvent;
????????acceptor.accept(pEvent
-> peer);
????????
int ?nRet? = ?m_Reactor -> register_handler(pEvent,?ACE_Event_Handler::READ_MASK);
????????
if ?( - 1 ? == ?nRet)
????????
{
????????????delete?pEvent;
????????????pEvent?
= ?NULL;
????????}


????????
return ? 0 ;
????}
;
????
virtual ? int ?handle_close?(ACE_HANDLE?handle,?ACE_Reactor_Mask?close_mask)
????
{
????????ACE_DEBUG((LM_DEBUG,?
" TestAcceptor::handle_close\n " ));
????????acceptor.close();
????????delete?
this ;

????????
return ? 0 ;

????}
;
????
????
????TestAcceptor(ACE_Reactor
* ?reactor):m_Reactor(reactor)
????
{
????????
????}
;
????
int ?open(unsigned? short ?usport)
????
{
????????ACE_INET_Addr?addr(usport);
????????acceptor.open(addr);
????????
return ?m_Reactor -> register_handler( this ,?ACE_Event_Handler::ACCEPT_MASK);

????}
;
????ACE_HANDLE?get_handle(
void )? const ?
????
{
????????
????????
return ?acceptor.get_handle();
????}

public :
????ACE_SOCK_Acceptor?acceptor;
????ACE_Reactor
* ?m_Reactor;

}
;


int ?main?( int ?argc,? char ? * argv[])
{
????

????ACE_Select_Reactor?select_reactor_one(g_unOneMaxHandle,?
0 ,? 0 ,? 0 ,? 1 );
????ACE_Reactor
* ?reactor_one? = ? new ?ACE_Reactor( & select_reactor_one);

????ACE_Select_Reactor?select_reactor_two(g_unTwoMaxhandle,?
0 ,? 0 ,? 0 ,? 1 );
????ACE_Reactor
* ?reactor_two? = ? new ?ACE_Reactor( & select_reactor_two);

????TestAcceptor?test_acceptor(reactor_one);
????test_acceptor.open(
1234 );

????TestAcceptor?test_acceptorw(reactor_two);
????test_acceptorw.open(
2345 );
????
????
????ACE_Thread_Manager::instance()
-> spawn(event_loop_one,?reactor_one);
????ACE_Thread_Manager::instance()
-> spawn(event_loop_two,?reactor_two);

????
return ?ACE_Thread_Manager::instance() -> wait();
}
posted on 2007-02-22 23:25 一動不如一靜 閱讀(861) 評論(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>
            欧美乱妇高清无乱码| 1024国产精品| 欧美亚洲色图校园春色| 狼人天天伊人久久| 欧美中文字幕精品| 久久精精品视频| 久久久亚洲高清| 久久一区亚洲| 男女视频一区二区| 亚洲日本免费| 国产精品免费观看视频| 亚洲高清毛片| 亚洲精品免费在线| 日韩五码在线| 午夜欧美精品| 久久这里只精品最新地址| 久久综合久久88| 欧美理论大片| 国产美女在线精品免费观看| 国产精品一级二级三级| 国产亚洲精品aa午夜观看| 国内精品久久久| 亚洲欧洲偷拍精品| 日韩视频在线免费| 亚洲欧美国产制服动漫| 欧美在线视频网站| 免费视频一区| 亚洲欧洲中文日韩久久av乱码| 亚洲国产成人av在线| 亚洲精品久久在线| 久久都是精品| 欧美电影免费| 国产毛片精品国产一区二区三区| 国产一区二区av| 亚洲国产另类久久久精品极度| 亚洲小视频在线| 欧美777四色影视在线| 日韩视频在线你懂得| 久久久欧美一区二区| 欧美视频中文一区二区三区在线观看| 国产一区二区三区视频在线观看| 日韩一区二区精品葵司在线| 久久久精品久久久久| 9色porny自拍视频一区二区| 老牛国产精品一区的观看方式| 国产精品日韩电影| 日韩一区二区精品视频| 欧美成人a视频| 久久激情五月丁香伊人| 欧美三级日本三级少妇99| 亚洲二区在线视频| 久久久久高清| 午夜精品久久久久久久久久久久| 欧美久久在线| 亚洲精品黄色| 欧美成人精品高清在线播放| 亚洲一区自拍| 欧美日韩一区二区三区免费看 | 一个色综合av| 久久亚洲免费| 亚洲欧美日韩一区在线| 性欧美暴力猛交另类hd| 欧美中文字幕视频| 亚洲欧美日韩国产综合| 欧美天堂亚洲电影院在线观看| 亚洲蜜桃精久久久久久久| 欧美在线视频播放| 亚洲欧美自拍偷拍| 欧美日韩国产成人在线观看| 亚洲精品一区二区在线观看| 亚洲视频一区在线观看| 经典三级久久| 午夜精品国产更新| 99www免费人成精品| 亚洲一区二区三区乱码aⅴ蜜桃女| 亚洲福利在线看| 中文在线资源观看网站视频免费不卡 | 久久久久成人精品| 午夜伦欧美伦电影理论片| 国产九九精品视频| 先锋影音一区二区三区| 亚洲免费在线观看| 国产午夜精品视频| 老司机成人网| 欧美国产精品久久| 亚洲欧美精品在线观看| 欧美在线观看视频在线 | 欧美日韩一区二区在线观看| 亚洲一区在线观看视频| 欧美一区二区日韩一区二区| 在线精品视频在线观看高清| 欧美国产日韩免费| 欧美视频在线免费看| 久久精品一区二区三区中文字幕| 久久久噜噜噜久久中文字免| 亚洲精品中文字| 亚洲一区日韩| 亚洲成人影音| 亚洲天堂成人在线观看| 一区二区视频免费在线观看| 亚洲乱码国产乱码精品精天堂| 国产精品永久免费观看| 亚洲高清在线| 国产伦精品一区二区三区| 亚洲福利在线看| 国产日韩欧美精品| 亚洲精品在线三区| 一区在线电影| 亚洲一区在线观看免费观看电影高清| 在线不卡亚洲| 一区二区三区在线观看国产| 性欧美18~19sex高清播放| 国内精品视频一区| 9人人澡人人爽人人精品| 亚洲第一视频| 羞羞漫画18久久大片| 99精品视频免费观看视频| 久久精品视频在线看| 欧美一级久久| 国产精品videosex极品| 亚洲精品国精品久久99热| 激情成人av| 欧美一区二区成人| 亚洲欧美激情四射在线日| 欧美激情一区二区三区在线视频观看| 久久久精品日韩欧美| 国产精品青草久久| av成人国产| 一本一本久久| 欧美精品色综合| 亚洲激情专区| 亚洲啪啪91| 农村妇女精品| 欧美国产欧美综合 | 校园激情久久| 欧美一区二区视频免费观看| 欧美日韩中文另类| 亚洲免费福利视频| 一区二区三区免费看| 欧美精品黄色| 亚洲久久在线| 亚洲一区二区三区中文字幕| 欧美日韩亚洲一区二区三区在线| 亚洲三级免费| 亚洲一区国产| 国产日韩精品一区二区| 欧美在线黄色| 蜜臀久久99精品久久久久久9 | 黑人巨大精品欧美一区二区小视频| 亚洲婷婷综合色高清在线| 午夜精品久久久久久久99热浪潮| 国产精品久久久久久久久搜平片| 国产精品99久久久久久www| 亚洲欧美在线一区| 国产亚洲二区| 免费日韩精品中文字幕视频在线| 亚洲国产精品va在线看黑人动漫| 日韩视频免费观看| 国产精品一区二区三区久久| 久久国产精品色婷婷| 欧美成人日本| 亚洲午夜极品| 国产专区综合网| 免费一级欧美在线大片| 一本久久a久久免费精品不卡| 性久久久久久久久| **性色生活片久久毛片| 欧美日韩国产综合网 | 欧美日本韩国| 亚洲欧美日韩第一区| 女主播福利一区| 正在播放欧美一区| 国产欧美亚洲日本| 欧美成ee人免费视频| 国产欧美日韩精品a在线观看| 亚洲欧美日韩一区二区三区在线观看 | 一区在线免费| 欧美日本不卡高清| 性欧美超级视频| 亚洲精品乱码久久久久久久久| 午夜在线一区| 日韩一级精品| 国内精品国产成人| 欧美日韩一区二区在线视频 | 欧美在线综合视频| 亚洲精选在线| 国语自产精品视频在线看抢先版结局 | 一本色道久久| 黄色国产精品| 国产精品国产一区二区| 久久露脸国产精品| 亚洲一区日本| 99成人精品| 亚洲成人在线网| 久久精品最新地址| 亚洲综合三区| 一区二区免费在线视频| 亚洲高清视频的网址| 国产日韩欧美日韩| 欧美午夜精品|