锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产日韩精品在线,欧美一区二视频在线免费观看,国产精品v欧美精品∨日韩http://www.shnenglu.com/lijialian/category/1777.htmlzh-cnMon, 19 May 2008 23:00:20 GMTMon, 19 May 2008 23:00:20 GMT60TP_Reactor 瀛︿範(fàn)絎旇http://www.shnenglu.com/lijialian/archive/2007/02/25/18971.html涓鍔ㄤ笉濡備竴闈?/dc:creator>涓鍔ㄤ笉濡備竴闈?/author>Sun, 25 Feb 2007 12:41:00 GMThttp://www.shnenglu.com/lijialian/archive/2007/02/25/18971.htmlhttp://www.shnenglu.com/lijialian/comments/18971.htmlhttp://www.shnenglu.com/lijialian/archive/2007/02/25/18971.html#Feedback0http://www.shnenglu.com/lijialian/comments/commentRss/18971.htmlhttp://www.shnenglu.com/lijialian/services/trackbacks/18971.html闃呰鍏ㄦ枃

]]>
select_reactor鐨勫師鐮佸涔?fàn)绗旇?/title><link>http://www.shnenglu.com/lijialian/archive/2007/02/24/18950.html</link><dc:creator>涓鍔ㄤ笉濡備竴闈?/dc:creator><author>涓鍔ㄤ笉濡備竴闈?/author><pubDate>Sat, 24 Feb 2007 12:30:00 GMT</pubDate><guid>http://www.shnenglu.com/lijialian/archive/2007/02/24/18950.html</guid><wfw:comment>http://www.shnenglu.com/lijialian/comments/18950.html</wfw:comment><comments>http://www.shnenglu.com/lijialian/archive/2007/02/24/18950.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/lijialian/comments/commentRss/18950.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/lijialian/services/trackbacks/18950.html</trackback:ping><description><![CDATA[     鎽樿: 棣栧厛浠庡畾涔変竴涓猺eactor寮濮嬨侫CE_TP_Reactor select_reactor_one(g_unOneMaxHandle, 0, 0, 0, 1); 涓婇潰鐨勮繖鍙ヨ瘽瑙﹀彂浜嗕竴涓嬬殑涓浜涜涓恒備富瑕佸氨鏄粰event_handlers_鍒嗛厤浜嗗唴瀛樸傝繖閲屽氨鍐沖畾浜嗕綘鑳芥敮鎸佸灝戞潯榪炴帴 int ACE_Select_React...  <a href='http://www.shnenglu.com/lijialian/archive/2007/02/24/18950.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/lijialian/aggbug/18950.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/lijialian/" target="_blank">涓鍔ㄤ笉濡備竴闈?/a> 2007-02-24 20:30 <a href="http://www.shnenglu.com/lijialian/archive/2007/02/24/18950.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>N涓猂eactor鏄惁灝辨剰鍛崇潃鏀寔N*FD_SETSIZE涓繛鎺ュ憿錛?/title><link>http://www.shnenglu.com/lijialian/archive/2007/02/22/18917.html</link><dc:creator>涓鍔ㄤ笉濡備竴闈?/dc:creator><author>涓鍔ㄤ笉濡備竴闈?/author><pubDate>Thu, 22 Feb 2007 15:25:00 GMT</pubDate><guid>http://www.shnenglu.com/lijialian/archive/2007/02/22/18917.html</guid><wfw:comment>http://www.shnenglu.com/lijialian/comments/18917.html</wfw:comment><comments>http://www.shnenglu.com/lijialian/archive/2007/02/22/18917.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/lijialian/comments/commentRss/18917.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/lijialian/services/trackbacks/18917.html</trackback:ping><description><![CDATA[ <p>聽</p> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"> <img id="Codehighlighter1_0_835_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_835_Open_Text.style.display='none'; Codehighlighter1_0_835_Closed_Image.style.display='inline'; Codehighlighter1_0_835_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /> <img id="Codehighlighter1_0_835_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_0_835_Closed_Text.style.display='none'; Codehighlighter1_0_835_Open_Image.style.display='inline'; Codehighlighter1_0_835_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /> <span id="Codehighlighter1_0_835_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/**/</span> <span id="Codehighlighter1_0_835_Open_Text"> <span style="COLOR: #008000">/*</span> <span style="COLOR: #008000">*******************************************************************<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*聽Copyright聽(c)聽2006,study-record聽home<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*聽All聽rights聽reservered.<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*聽鏂囦歡鍚嶇О聽:聽littersize.cpp聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*聽鎽樎犅犅犅犺聽:聽榪欎釜渚嬪瓙涓昏鏄敤鏉ラ獙璇佽繖鏍蜂竴涓棶棰樸傚綋鎴戜滑紼嬪簭涓湁n涓猺eactor鐨勬椂鍊欙紝鏄惁灝辨剰鍛崇潃鎴戜滑鏀寔n*FD_SETSIZE榪炴帴.<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽涓轟簡楠岃瘉榪欎釜闂,鎴戜滑浼犻掍竴涓ぇ灝忎負(fù)2鐨勫肩粰ACE_Select_Reactor鐨勬瀯閫犲嚱鏁般傜湅鏄惁鏄彧鏀寔2涓繛鎺?<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽楠岃瘉緇撴灉琛ㄦ槑錛氬湪鏈緥瀛愪腑錛岀敱浜巃cceptor娉ㄥ唽鐢ㄦ帀浜嗕竴涓紝鑰屾垜浠粰瀹氱殑鏈澶х殑handle鏁頒負(fù)2,鎵浠ュ彧鑳芥帴鍙椾竴涓繛鎺ャ?br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽鍦ㄥ懡浠よ涓嬭緭鍏ワ細(xì)telnet聽127.0.0.1聽1234聽,鍦ㄦ垜浠浜屾杈撳叆鏃訛紝<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽鍦ㄨ皟鐢╥nt聽nRet聽=聽m_Reactor->register_handler(pEvent,聽ACE_Event_Handler::READ_MASK);鐨勬椂鍊欎竴瀹氫細(xì)澶辮觸銆?br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽浣嗘槸鍦ㄥ懡浠よ涓嬭緭鍏?telnet聽127.0.0.1聽2345聽,鍦ㄦ垜浠涓夋杈撳叆鐨勬椂鍊欙紝璋冪敤register_handler鐨勬椂鍊欐墠浼?xì)澶辫?br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽浣嗘槸榪欐牱鐨勪竴孌典唬鐮佸瓨鍦ㄩ珮cpu鐨勯棶棰橈紝涔熷氨鏄綋鎶婂鎴風(fēng)鍏寵皟鐨勬椂鍊欙紝cpu鍗犵敤鐜囦細(xì)寰堥珮?鎯蟲兂鐪嬶紝涓轟粈涔堝憿錛?br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽鏈唬鐮佸彧鏄負(fù)浜嗛獙璇佷竴浜涗笢瑗匡紝鏈夊緢澶氫笉鍚堢悊鐨勫湴鏂癸紝璇峰姟浠跨収銆?br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*聽褰撳墠鐗堟湰聽:聽1.0<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*聽浣溌犅犅犅犺吢?聽study-record聽聽聽2007-2-22<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />*<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />********************************************************************</span> <span style="COLOR: #008000">*/</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" />#include聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">ace/Thread_Manager.h</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" />#include聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">ace/Select_Reactor.h</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" />#include聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">ace/Reactor.h</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" />#include聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">ace/Event_Handler.h</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" />#include聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">ace/SOCK_Acceptor.h</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" />#include聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">ace/SOCK_Stream.h</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" />#include聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">ace/INET_Addr.h</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /> </span> <span style="COLOR: #0000ff">const</span> <span style="COLOR: #000000">聽size_t聽g_unOneMaxHandle聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">2</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">const</span> <span style="COLOR: #000000">聽size_t聽g_unTwoMaxhandle聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">4</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">static</span> <span style="COLOR: #000000">聽ACE_THR_FUNC_RETURN聽event_loop_one聽(</span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">arg)聽<br /><img id="Codehighlighter1_1173_1321_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1173_1321_Open_Text.style.display='none'; Codehighlighter1_1173_1321_Closed_Image.style.display='inline'; Codehighlighter1_1173_1321_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_1173_1321_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1173_1321_Closed_Text.style.display='none'; Codehighlighter1_1173_1321_Open_Image.style.display='inline'; Codehighlighter1_1173_1321_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span> <span id="Codehighlighter1_1173_1321_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1173_1321_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Reactor聽</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">reacator聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽static_cast</span> <span style="COLOR: #000000"><</span> <span style="COLOR: #000000">ACE_Reactor聽</span> <span style="COLOR: #000000">*></span> <span style="COLOR: #000000">(arg);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽reacator</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">owner(ACE_Thread::self());<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽reacator</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">run_reactor_event_loop();<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /> </span> <span style="COLOR: #0000ff">static</span> <span style="COLOR: #000000">聽ACE_THR_FUNC_RETURN聽event_loop_two聽(</span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">arg)聽<br /><img id="Codehighlighter1_1378_1525_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1378_1525_Open_Text.style.display='none'; Codehighlighter1_1378_1525_Closed_Image.style.display='inline'; Codehighlighter1_1378_1525_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_1378_1525_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1378_1525_Closed_Text.style.display='none'; Codehighlighter1_1378_1525_Open_Image.style.display='inline'; Codehighlighter1_1378_1525_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span> <span id="Codehighlighter1_1378_1525_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1378_1525_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Reactor聽</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">reacator聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽static_cast</span> <span style="COLOR: #000000"><</span> <span style="COLOR: #000000">ACE_Reactor聽</span> <span style="COLOR: #000000">*></span> <span style="COLOR: #000000">(arg);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽reacator</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">owner(ACE_Thread::self());<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽reacator</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">run_reactor_event_loop();<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /> </span> <span style="COLOR: #0000ff">class</span> <span style="COLOR: #000000">聽TestHandleEvent:聽</span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000">聽ACE_Event_Handler<br /><img id="Codehighlighter1_1576_2006_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1576_2006_Open_Text.style.display='none'; Codehighlighter1_1576_2006_Closed_Image.style.display='inline'; Codehighlighter1_1576_2006_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_1576_2006_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1576_2006_Closed_Text.style.display='none'; Codehighlighter1_1576_2006_Open_Image.style.display='inline'; Codehighlighter1_1576_2006_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span> <span id="Codehighlighter1_1576_2006_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1576_2006_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /></span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000">:<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽</span> <span style="COLOR: #0000ff">virtual</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000">聽handle_input聽(ACE_HANDLE聽fd聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽ACE_INVALID_HANDLE)<br /><img id="Codehighlighter1_1650_1726_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1650_1726_Open_Text.style.display='none'; Codehighlighter1_1650_1726_Closed_Image.style.display='inline'; Codehighlighter1_1650_1726_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1650_1726_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1650_1726_Closed_Text.style.display='none'; Codehighlighter1_1650_1726_Open_Image.style.display='inline'; Codehighlighter1_1650_1726_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽</span> <span id="Codehighlighter1_1650_1726_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1650_1726_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽ACE_DEBUG((LM_DEBUG,聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">TestHandleEvent::handle_input\n</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">));<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽}</span> </span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽</span> <span style="COLOR: #0000ff">virtual</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000">聽handle_close聽(ACE_HANDLE聽handle,聽ACE_Reactor_Mask聽close_mask)<br /><img id="Codehighlighter1_1805_1900_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1805_1900_Open_Text.style.display='none'; Codehighlighter1_1805_1900_Closed_Image.style.display='inline'; Codehighlighter1_1805_1900_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1805_1900_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1805_1900_Closed_Text.style.display='none'; Codehighlighter1_1805_1900_Open_Image.style.display='inline'; Codehighlighter1_1805_1900_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽</span> <span id="Codehighlighter1_1805_1900_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1805_1900_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽ACE_DEBUG((LM_DEBUG,聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">TestHandleEvent::handle_close\n</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">));<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽delete聽</span> <span style="COLOR: #0000ff">this</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽}</span> </span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_HANDLE聽get_handle(</span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000">)聽</span> <span style="COLOR: #0000ff">const</span> <span style="COLOR: #000000">聽<br /><img id="Codehighlighter1_1940_1971_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1940_1971_Open_Text.style.display='none'; Codehighlighter1_1940_1971_Closed_Image.style.display='inline'; Codehighlighter1_1940_1971_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1940_1971_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1940_1971_Closed_Text.style.display='none'; Codehighlighter1_1940_1971_Open_Image.style.display='inline'; Codehighlighter1_1940_1971_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽</span> <span id="Codehighlighter1_1940_1971_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1940_1971_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽peer.get_handle();<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /> </span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000">:<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_SOCK_Stream聽peer;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span> </span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">class</span> <span style="COLOR: #000000">聽TestAcceptor聽:聽</span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000">聽ACE_Event_Handler<br /><img id="Codehighlighter1_2055_2943_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2055_2943_Open_Text.style.display='none'; Codehighlighter1_2055_2943_Closed_Image.style.display='inline'; Codehighlighter1_2055_2943_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_2055_2943_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2055_2943_Closed_Text.style.display='none'; Codehighlighter1_2055_2943_Open_Image.style.display='inline'; Codehighlighter1_2055_2943_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span> <span id="Codehighlighter1_2055_2943_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_2055_2943_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /></span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000">:<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽</span> <span style="COLOR: #0000ff">virtual</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000">聽handle_input聽(ACE_HANDLE聽fd聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽ACE_INVALID_HANDLE)<br /><img id="Codehighlighter1_2129_2372_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2129_2372_Open_Text.style.display='none'; Codehighlighter1_2129_2372_Closed_Image.style.display='inline'; Codehighlighter1_2129_2372_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2129_2372_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2129_2372_Closed_Text.style.display='none'; Codehighlighter1_2129_2372_Open_Image.style.display='inline'; Codehighlighter1_2129_2372_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽</span> <span id="Codehighlighter1_2129_2372_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_2129_2372_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽TestHandleEvent</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">聽pEvent聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #0000ff">new</span> <span style="COLOR: #000000">聽TestHandleEvent;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽acceptor.accept(pEvent</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">peer);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000">聽nRet聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽m_Reactor</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">register_handler(pEvent,聽ACE_Event_Handler::READ_MASK);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">if</span> <span style="COLOR: #000000">聽(</span> <span style="COLOR: #000000">-</span> <span style="COLOR: #000000">1</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">==</span> <span style="COLOR: #000000">聽nRet)<br /><img id="Codehighlighter1_2316_2356_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2316_2356_Open_Text.style.display='none'; Codehighlighter1_2316_2356_Closed_Image.style.display='inline'; Codehighlighter1_2316_2356_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2316_2356_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2316_2356_Closed_Text.style.display='none'; Codehighlighter1_2316_2356_Open_Image.style.display='inline'; Codehighlighter1_2316_2356_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span id="Codehighlighter1_2316_2356_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_2316_2356_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽delete聽pEvent;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽聽聽聽聽pEvent聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽NULL;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽聽聽聽聽}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽}</span> </span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽</span> <span style="COLOR: #0000ff">virtual</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000">聽handle_close聽(ACE_HANDLE聽handle,聽ACE_Reactor_Mask聽close_mask)<br /><img id="Codehighlighter1_2451_2561_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2451_2561_Open_Text.style.display='none'; Codehighlighter1_2451_2561_Closed_Image.style.display='inline'; Codehighlighter1_2451_2561_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2451_2561_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2451_2561_Closed_Text.style.display='none'; Codehighlighter1_2451_2561_Open_Image.style.display='inline'; Codehighlighter1_2451_2561_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽</span> <span id="Codehighlighter1_2451_2561_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_2451_2561_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽ACE_DEBUG((LM_DEBUG,聽</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">TestAcceptor::handle_close\n</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">));<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽acceptor.close();<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽delete聽</span> <span style="COLOR: #0000ff">this</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽}</span> </span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽TestAcceptor(ACE_Reactor</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">聽reactor):m_Reactor(reactor)<br /><img id="Codehighlighter1_2624_2630_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2624_2630_Open_Text.style.display='none'; Codehighlighter1_2624_2630_Closed_Image.style.display='inline'; Codehighlighter1_2624_2630_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2624_2630_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2624_2630_Closed_Text.style.display='none'; Codehighlighter1_2624_2630_Open_Image.style.display='inline'; Codehighlighter1_2624_2630_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽</span> <span id="Codehighlighter1_2624_2630_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_2624_2630_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽}</span> </span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽</span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000">聽open(unsigned聽</span> <span style="COLOR: #0000ff">short</span> <span style="COLOR: #000000">聽usport)<br /><img id="Codehighlighter1_2667_2800_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2667_2800_Open_Text.style.display='none'; Codehighlighter1_2667_2800_Closed_Image.style.display='inline'; Codehighlighter1_2667_2800_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2667_2800_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2667_2800_Closed_Text.style.display='none'; Codehighlighter1_2667_2800_Open_Image.style.display='inline'; Codehighlighter1_2667_2800_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽</span> <span id="Codehighlighter1_2667_2800_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_2667_2800_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽ACE_INET_Addr聽addr(usport);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽acceptor.open(addr);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽m_Reactor</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">register_handler(</span> <span style="COLOR: #0000ff">this</span> <span style="COLOR: #000000">,聽ACE_Event_Handler::ACCEPT_MASK);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽}</span> </span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_HANDLE聽get_handle(</span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000">)聽</span> <span style="COLOR: #0000ff">const</span> <span style="COLOR: #000000">聽<br /><img id="Codehighlighter1_2840_2878_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2840_2878_Open_Text.style.display='none'; Codehighlighter1_2840_2878_Closed_Image.style.display='inline'; Codehighlighter1_2840_2878_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2840_2878_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2840_2878_Closed_Text.style.display='none'; Codehighlighter1_2840_2878_Open_Image.style.display='inline'; Codehighlighter1_2840_2878_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />聽聽聽聽</span> <span id="Codehighlighter1_2840_2878_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_2840_2878_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽acceptor.get_handle();<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />聽聽聽聽}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /> </span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000">:<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_SOCK_Acceptor聽acceptor;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Reactor</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">聽m_Reactor;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span> </span> <span style="COLOR: #000000">;<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000">聽main聽(</span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000">聽argc,聽</span> <span style="COLOR: #0000ff">char</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">argv[])<br /><img id="Codehighlighter1_2982_3593_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2982_3593_Open_Text.style.display='none'; Codehighlighter1_2982_3593_Closed_Image.style.display='inline'; Codehighlighter1_2982_3593_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_2982_3593_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2982_3593_Closed_Text.style.display='none'; Codehighlighter1_2982_3593_Open_Image.style.display='inline'; Codehighlighter1_2982_3593_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span> <span id="Codehighlighter1_2982_3593_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.shnenglu.com/images/dot.gif" /> </span> <span id="Codehighlighter1_2982_3593_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Select_Reactor聽select_reactor_one(g_unOneMaxHandle,聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">,聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">,聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">,聽</span> <span style="COLOR: #000000">1</span> <span style="COLOR: #000000">);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Reactor</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">聽reactor_one聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #0000ff">new</span> <span style="COLOR: #000000">聽ACE_Reactor(</span> <span style="COLOR: #000000">&</span> <span style="COLOR: #000000">select_reactor_one);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Select_Reactor聽select_reactor_two(g_unTwoMaxhandle,聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">,聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">,聽</span> <span style="COLOR: #000000">0</span> <span style="COLOR: #000000">,聽</span> <span style="COLOR: #000000">1</span> <span style="COLOR: #000000">);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Reactor</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #000000">聽reactor_two聽</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">聽</span> <span style="COLOR: #0000ff">new</span> <span style="COLOR: #000000">聽ACE_Reactor(</span> <span style="COLOR: #000000">&</span> <span style="COLOR: #000000">select_reactor_two);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽TestAcceptor聽test_acceptor(reactor_one);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽test_acceptor.open(</span> <span style="COLOR: #000000">1234</span> <span style="COLOR: #000000">);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽TestAcceptor聽test_acceptorw(reactor_two);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽test_acceptorw.open(</span> <span style="COLOR: #000000">2345</span> <span style="COLOR: #000000">);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Thread_Manager::instance()</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">spawn(event_loop_one,聽reactor_one);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽ACE_Thread_Manager::instance()</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">spawn(event_loop_two,聽reactor_two);<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align="top" />聽聽聽聽</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">聽ACE_Thread_Manager::instance()</span> <span style="COLOR: #000000">-></span> <span style="COLOR: #000000">wait();<br /><img src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span> </span> </div> <img src ="http://www.shnenglu.com/lijialian/aggbug/18917.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/lijialian/" target="_blank">涓鍔ㄤ笉濡備竴闈?/a> 2007-02-22 23:25 <a href="http://www.shnenglu.com/lijialian/archive/2007/02/22/18917.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>寮傛I/Ohttp://www.shnenglu.com/lijialian/archive/2006/10/07/13410.html涓鍔ㄤ笉濡備竴闈?/dc:creator>涓鍔ㄤ笉濡備竴闈?/author>Sat, 07 Oct 2006 05:57:00 GMThttp://www.shnenglu.com/lijialian/archive/2006/10/07/13410.htmlhttp://www.shnenglu.com/lijialian/comments/13410.htmlhttp://www.shnenglu.com/lijialian/archive/2006/10/07/13410.html#Feedback0http://www.shnenglu.com/lijialian/comments/commentRss/13410.htmlhttp://www.shnenglu.com/lijialian/services/trackbacks/13410.html
璧勬簮錛歨ttp://www.zahui.com/html/9/35437.htm

]]>
鍏充簬ACE_TP_Reactorhttp://www.shnenglu.com/lijialian/archive/2006/10/07/13408.html涓鍔ㄤ笉濡備竴闈?/dc:creator>涓鍔ㄤ笉濡備竴闈?/author>Sat, 07 Oct 2006 03:29:00 GMThttp://www.shnenglu.com/lijialian/archive/2006/10/07/13408.htmlhttp://www.shnenglu.com/lijialian/comments/13408.htmlhttp://www.shnenglu.com/lijialian/archive/2006/10/07/13408.html#Feedback0http://www.shnenglu.com/lijialian/comments/commentRss/13408.htmlhttp://www.shnenglu.com/lijialian/services/trackbacks/13408.html
鍦ˋddison-Wesley - C++NetworkProgrammingVol2鐨?.3 The ACE_TP_Reactor Class涓湁榪欐牱鍑犲彞璇濓紝璁╂垜瓚寵凍鎯充簡涓澶┿?br />
1.Multiple threads running an ACE_TP_Reactor event loop can process events concurrently on different handles
2.They can also dispatch timeout and I/O callback methods concurrently on the same event handler
3.The only serialization in the ACE_TP_Reactor occurs when I/O events occur concurrently on the same handle
4.After a thread obtains a set of active handles from select(), the other reactor threads dispatch from that handle set instead of calling select() again

鍏跺疄涓婇潰鐨?鍙ヨ瘽涓昏琛ㄨ揪榪欐牱鐨勫嚑灞傚惈涔?br />1.騫惰澶勭悊涓嶅悓handle涓婄殑浜嬩歡
2.騫惰澶勭悊鍚屼竴event handler涓婄殑瓚呮椂鍥炶皟鍑芥暟鍜孖/O鍥炶皟鍑芥暟
3.澶氫釜綰跨▼涓茶澶勭悊鍚屼竴涓猦andle涓婄殑I/O浜嬩歡銆?br />4.铏界劧TP_Reactor鏄敤leader/follow妯″紡杞祦璋冪敤select,浣嗘槸濡傛灉涓涓猻elect()鑾峰緱浜嗗涓縺媧葷殑handle,閭d箞鍏朵粬鐨勭嚎紼嬩細(xì)鍒嗗彂榪欎簺handle 錛岃屼笉鏄幓鍐嶆璋冪敤select.
聽(榪欑偣榪樻病鏈夋兂閫氾紝涔熸病鏈夌湅瑙佹槸濡備綍瀹炵幇鐨勶紵)

鈥滃涓嚎紼嬩覆琛屽鐞嗗悓涓涓猦andle涓婄殑I/O浜嬩歡鈥?/u>
聽聽聽 聽聽 榪欎釜鏄浣曡揪鍒扮殑鍛紵ACE婧愮爜涓紝褰撳鐞咺/O浜嬩歡鐨勬椂鍊欙紝浼?xì)灏?font size="3">HANDLE鎸傝搗錛屼嬌寰椾笉鍐嶅璇?font size="3">HANDLE鍋氫簨浠朵睛鍚傛潵杈懼埌鍚屼竴涓?font size="3">handle涓?/font>鐨処/O浜嬩歡鏄澶氫釜綰跨▼涓茶鍦板鐞嗐?/span>

"騫惰澶勭悊鍚屼竴event handler涓婄殑瓚呮椂鍥炴帀鍑芥暟鍜孖/O鍥炶皟鍑芥暟"
聽聽聽 聽聽 榪欐牱濂藉儚灝辨瘮杈冮夯鐑︿簡銆傚洜涓鴻繖灝辨剰鍛崇潃TP_Reactor鍙繚璇佸悓涓涓猦andle涓嬩笉浼?xì)鏈夊绾拷E嬪悓鏃惰皟鐢↖/O浜嬩歡錛屼絾鏄嵈鏈夊彲鑳藉悓鏃惰皟鐢ㄨ秴鏃跺洖璋冨嚱鏁板拰I/O鍥炶皟鍑芥暟銆傚鏋滃湪榪欎袱涓嚱鏁頒腑鏈夊鏁版嵁鐨勮闂拰鎿嶄綔錛岃繖灝辨剰鍛崇潃闇瑕佹湁閿佺殑寮曞叆銆備緥澶栵紝濡傛灉鍦ㄥ畾鏃跺櫒澶勭悊涓紝瓚呰繃瀹氭椂鐨勪簨浠墮棿闅旓紝灝變細(xì)鏈変護(hù)涓涓嚎紼嬪啀嬈¤皟鐢ㄥ畾鏃跺櫒鐨勫鐞嗗嚱鏁幫紝涓涓嬪瓙寮曞叆浜嗗緢澶氬悓姝ョ殑闂銆傚浣曡В鍐寵繖涓棶棰樺憿錛?br />
鏂規(guī)硶涓錛?br />
聽聽聽 聽聽聽 聽聽聽 鏇存敼ACE鐨勬簮鐮侊紝璞″鐞唖ocket浜嬩歡涓鏍鳳紝鍦ㄥ鐞嗗畾鏃朵簨浠剁殑鏃跺欙紝涔熸妸HANDLE鎸傝搗銆傛潵鑷猦ttp://cpunion.cnblogs.com/archive/2005/08/09/210941.html

int
ACE_TP_Reactor::handle_timer_events聽(
int&/*event_count*/,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽ACE_TP_Token_Guard聽
&guard)
{
聽聽
//聽Get聽the聽current聽time
聽聽ACE_Time_Value聽cur_time聽(this->timer_queue_->gettimeofday聽()聽+
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
this->timer_queue_->timer_skew聽());

聽聽
//聽Look聽for聽a聽node聽in聽the聽timer聽queue聽whose聽timer聽<=聽the聽present
聽聽
//聽time.
聽聽ACE_Timer_Node_Dispatch_Info聽info;

聽聽
if聽(this->timer_queue_->dispatch_info聽(cur_time,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽info))
聽聽聽聽{
聽聽聽聽聽聽聽聽
//聽********聽fixed聽by聽lijie聽***********
聽聽聽聽聽聽聽聽if聽(info.type_->get_handle聽()聽!=聽ACE_INVALID_HANDLE)
聽聽聽聽聽聽聽聽{
聽聽聽聽聽聽聽聽聽聽聽聽
if聽(this->is_suspended_i聽(info.type_->get_handle聽()))
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
return0;

聽聽聽聽聽聽聽聽聽聽聽聽
this->suspend_handler聽(info.type_->get_handle聽());
聽聽聽聽聽聽聽聽}
聽聽聽聽聽聽聽聽
//聽********聽end聽**********************

聽聽聽聽聽聽
constvoid*upcall_act聽=0;

聽聽聽聽聽聽
//聽Preinvoke.
聽聽聽聽聽聽this->timer_queue_->preinvoke聽(info,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽cur_time,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽upcall_act);

聽聽聽聽聽聽

聽聽聽聽聽聽
//聽Release聽the聽token聽before聽dispatching聽notifies
聽聽聽聽聽聽guard.release_token聽();

聽聽聽聽聽聽
//聽call聽the聽functor
聽聽聽聽聽聽this->timer_queue_->upcall聽(info,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽cur_time);

聽聽聽聽聽聽
//聽Postinvoke
聽聽聽聽聽聽this->timer_queue_->postinvoke聽(info,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽cur_time,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽upcall_act);

聽聽聽聽聽聽
//聽We聽have聽dispatched聽a聽timer
聽聽聽聽聽聽return1;
聽聽聽聽}

聽聽
return0;
}

handle_timer澶勭悊瀹屼互鍚庯紝榪斿洖浠ュ墠錛屽姞涓婅繖鍙ヨ瘽
this->reactor ()->resume_handler (this->get_handle ());

褰撶劧鍒繕浜嗕負(fù)Handler緙栧啓get_handle()鍑芥暟錛?br />
ACE_HANDLE聽Test_Handler::get_handle聽()聽const
{
聽聽聽聽
returnthis->peer聽().get_handle聽();
}


鏂規(guī)硶浜岋細(xì)
聽聽聽 聽聽 聽聽 聽聽 鍒╃敤ACE_Pipe鍜?/span>ACE_Message_Queue鎶婃墍鏈夌殑浜嬩歡閮芥帓闃熷埌鍚屼竴涓?/span>I/O HANDLE涓婂幓錛屽啀鐢?/span>ACE_TP_Reactor閫氳繃澶氫釜綰跨▼欏哄簭涓茶鍦?/u>瑙﹀彂鎴戜滑鏃х殑event_handler鏉ュ鐞嗚繖浜涘凡緇忔帓濂介槦鐨勪簨浠?/span>/娑堟伅銆傛垜姣旇緝璧炴垚鐢ㄨ繖鏍鋒柟娉曘傝鏂規(guī)硶鏉ヨ嚜錛?/span>http://blog.csdn.net/zhdaniel/archive/2006/06/29/850888.aspx
聽聽聽

聽聽聽 聽聽


鏂規(guī)硶涓夛細(xì)
聽聽聽 聽聽 聽聽 聽聽 ^_^騫茶剢灝變笉瑕佸鍚屼竴涓猠vent聽 handler娉ㄥ唽I/O浜嬩歡鍜屽叾浠栦簨浠躲?br />






]]>
鍏充簬MPC鐨勯棶棰樻敹闆?/title><link>http://www.shnenglu.com/lijialian/archive/2006/06/24/8949.html</link><dc:creator>涓鍔ㄤ笉濡備竴闈?/dc:creator><author>涓鍔ㄤ笉濡備竴闈?/author><pubDate>Sat, 24 Jun 2006 02:18:00 GMT</pubDate><guid>http://www.shnenglu.com/lijialian/archive/2006/06/24/8949.html</guid><wfw:comment>http://www.shnenglu.com/lijialian/comments/8949.html</wfw:comment><comments>http://www.shnenglu.com/lijialian/archive/2006/06/24/8949.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/lijialian/comments/commentRss/8949.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/lijialian/services/trackbacks/8949.html</trackback:ping><description><![CDATA[鏉ユ簮:<br />http://www.ociweb.com/products/mpc/faq.html#006<br /><br />Q :褰撶敓鎴愬伐紼嬫枃浠跺悕縐扮殑鏃跺?鍙互鏀瑰彉宸ョ▼鏂囦歡鐨勫悕縐板悧?<br />A:褰撶敤MPC鐢熸垚宸ョ▼鏂囦歡鐨勬椂鍊?鍙互鐢?name_modifier 閫夐」鏉ヤ慨鏀瑰伐紼嬫枃浠跺悕縐?濡傛灉浣犱篃鎯充慨鏀瑰伐紼嬬殑鍚嶇О,鍙互澧炲姞-apply_project.濡備笅:<br />mwc.pl -static -type vc6 -name_modifier *_Static -apply_project<br />濡傛灉鐢ㄤ簡榪欎簺閫夐」,鎵鏈夌殑宸ヤ綔絀洪棿,宸ョ▼鏂囦歡鍜屽伐紼嬪悕閮戒互_Static緇撳熬.<br /><br />Q:鎬庢牱鐢∕PC鍦ㄦ瘡涓洰褰曠敓鎴愪竴涓伐浣滅┖闂?<br />A:褰撹繍琛宮wc.pl鐨勬椂鍊欏姞涓?hierarchy閫夐」.瀵逛簬鎵鏈夊熀浜?make'鐨勫伐浣滅┖闂存槸榛樿鐨?<br /><br />Q:鎬庢牱鍛婅瘔MPC鍦ㄥ鎵緈wc鍜宮pc鏂囦歡鏃?涓嶈瀵繪壘鏌愪釜鐗規(guī)畩鐨勮礬寰?<br />A:-exclude鍙互鐢ㄤ簬榪欎釜鐩殑.浣嗘槸榪欎釜璺緞蹇呴』鏄竴涓浉瀵逛簬MPC榪愯鐨勮礬寰?濡?<br />mwc.pl -exclude this_dir,this_dir_too,and_another_dir<br /><br />Q:鎬庢牱鍦ㄦ垜鐨勫伐浣滅┖闂翠腑鐢?value_template<br />A:鍦╩wc鏂囦歡涓?浣犺兘鐢ㄥ緢澶歮wc.pl鐨勫懡浠よ閫夐」.瑕佸姞涓奵mdline鍏抽敭瀛?濡傛灉鍦ㄥ懡浠よ涓渶瑕佹湁絀烘牸,蹇呴』鍖呭惈鍦?"涔嬩腑.濡?<br />workspace {<br />聽 // Set the command line value to change the configurations with vc6, vc71 and vc8<br />聽 cmdline += -value_template "configurations='MFC Release' 'MFC Debug'"<br />}<br /><br />Q:鏈夋病鏈夊姙娉曞湪Solaris,宸ョ▼涓寘鍚竴涓枃浠?浣嗘槸鍦↙inux涓婁笉鍖呭惈璇ユ枃浠跺憿?<br />A:浣犲彲浠ョ敤feature瀹氫箟涓涓猙ase宸ョ▼.濡備笅:<br />// config/default.features<br />solaris_only = 0<br /><br /><br />// some_base.mpb<br />feature(solaris_only) {<br />聽 Source_Files {<br />聽聽聽 source1.cpp <br />聽聽聽 source2.cpp <br />聽 }<br />}聽 <br /><br /><br />// your_project.mpc<br />project: some_base {<br />聽 Source_Files {<br />聽聽聽 source3.cpp <br />聽聽聽 source4.cpp <br />聽 }<br />}聽 <br /><br />Q:鍙笉鍙互涓浜涢夐」鐢ㄤ簬鏌愬鎴鋒枃浠?鑰屽彟澶栦竴浜涚敤浜庡叾浠栫殑瀹㈡埛鏂囦歡鍛?<br />A:浣犲彲浠ヤ負(fù)鐢ㄦ埛鐨勮緭鍏ユ枃浠跺垱寤哄涓儴鍒?濡備笅:<br /><pre>project: foo {<br /> FOO_Files { <br /> foo.file <br /> }<br /><br /> FOO_Files {<br /> commandflags += -QR<br /> bar.file<br /> }<br />} </pre>Q:鏈夋病鏈夊姙娉曡〃鏄庣紪璇戦夐」?<br />A:鍙互鐢?specific' .濡?<br />project {<br /><br />聽 specific(make) {<br />聽聽聽 compile_flags += -fcheck-new<br />聽 }<br /><br />聽 specific(vc71) {<br />聽聽聽 compile_flags += /wd4103<br />聽 }<br />}聽 <br /><br />Q:鍦ㄤ竴涓伐浣滅┖闂翠腑,鎯蟲湁闈欐佸拰鍔ㄦ佺殑宸ョ▼?<br />A:鍦╩wc鏂囦歡涓?寤虹珛涓涓煙鑼冨洿.澧炲姞-static鍒板懡浠よ閫夐」.濡?<br />workspace {<br />聽 // These projects will be static<br />聽 some_scope_name {<br />聽聽聽 cmdline += -static<br />聽聽聽 my_projects_dir聽聽 <br />聽聽聽 my_other_projects_dir<br />聽 }<br /><br />聽 // Anything outside the scope will have the command line options provided at the start of mwc.pl<br />聽 another_dir<br />}<br /><br />Q:鏈夋病鏈夋柟娉曞湪mpc鏂囦歡涓〃鏄庤繖涓簱蹇呴』鏄潤鎬佸簱,鍏朵粬鐨勫簱涓嶈兘鎶婂畠鐢ㄥ仛鍔ㄦ佸簱?<br />A:璁劇疆闈欐佸簱鍚?鑰屽姩鎬佸簱鍚嶄負(fù)絀?<br />project {<br />聽 sharedname =<br />聽 staticname = foo<br />}<br /><br />Q:MPC娣誨姞d.lib鍒版墍鏈夌殑搴?鏈夋病鏈夊姙娉曞叧鎺夊畠?<br />A:鍦╩pc鏂囦歡涓敤'lit_libs'浠f浛libs<br /><br />Q:涓簐c6鍜寁c71鐢熸垚闈欐佸伐紼?鍙槸鍗存病鏈夊伐紼嬬殑渚濊禆?<br />A:鍙互閫氳繃璁劇疆MPC_DEPENDENCY_COMBINED_STATIC_LIBRARY鐜鍙橀噺,寮鴻揩MPC鐢熸垚宸ョ▼闂寸浉浜掍緷璧栫殑鐨勯潤鎬佸簱.<br /><br />Q:鏈夋病鏈夋柟娉曞彲浠ュ己鍒跺湪闈欐佸簱鍚嶅悗鏈?s'浣嗘槸debug鐗堟湰娌℃湁'd'<br />A:鏄殑,浣犺兘璁劇疆lib_modifier,鐢ㄨ繖涓厤緗駭浣嶅煙淇敼鍣?鍦ㄤ笅闈㈢殑渚嬪瓙涓?鍋囪-static閫夐」宸茬粡浼犻掔粰浜哅PC<br />project {<br />聽 // Override the values of 's' and 'sd' respectively.<br />聽 specific {<br />聽聽聽 Release::lib_modifier =<br />聽聽聽 Debug::lib_modifier = d<br />聽 }<br />}聽 <br /><br />Q:鐢盡PC鐢熸垚鐨刅C71宸ョ▼,鐢╮elease ,鐢熸垚鐨勬墽琛屾枃浠跺湪release鐩綍涓?鑰宒ebug鏄湪"."鐩綍涓?鎬庢牱鎵嶈兘鎶婃墽琛屾枃浠舵斁鍦╠ebug鐩綍涓? 聽聽聽 <br />A: 澧炲姞鏀硅鍒癕PC宸ョ▼涓?br />project {聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 <br />聽 specific(nmake, vc6, vc7, vc71, vc8) {<br />聽聽聽 Debug::install = Debug<br />聽 }<br />}<br /><br />Q:濡備綍鐢熸垚鏀寔MFC鐨勭増鏈?br />A:MPC鐨勫懡浠よ澧炲姞涓嬮潰涓琛?br />-value_template "configurations='MFC Release' 'MFC Debug'"<br />榪欎釜鍙互鐢ㄤ簬 em3, nmake, vc6, vc7, vc71 鍜?vc8 宸ョ▼綾誨瀷鐨勯厤緗?br />鎻愰啋涓涓嬶紝鍒繕浜嗗垱寤篶onfig.h鏂囦歡錛屽唴瀹圭被浼煎涓嬶細(xì)<br />#include "config-win32.h"<br />#include "config-win32-msvc-7.h"<br /><br /><br /><br /><img src ="http://www.shnenglu.com/lijialian/aggbug/8949.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/lijialian/" target="_blank">涓鍔ㄤ笉濡備竴闈?/a> 2006-06-24 10:18 <a href="http://www.shnenglu.com/lijialian/archive/2006/06/24/8949.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>緗戠粶緙栫▼鍗? ACE_WFMO_Reactor鐨勫茍鍙戣冭檻http://www.shnenglu.com/lijialian/archive/2006/06/23/8906.html涓鍔ㄤ笉濡備竴闈?/dc:creator>涓鍔ㄤ笉濡備竴闈?/author>Fri, 23 Jun 2006 12:48:00 GMThttp://www.shnenglu.com/lijialian/archive/2006/06/23/8906.htmlhttp://www.shnenglu.com/lijialian/comments/8906.htmlhttp://www.shnenglu.com/lijialian/archive/2006/06/23/8906.html#Feedback0http://www.shnenglu.com/lijialian/comments/commentRss/8906.htmlhttp://www.shnenglu.com/lijialian/services/trackbacks/8906.html
  • 娉ㄥ唽鏀瑰彉鐨勫崗璋?宸叉敞鍐屽彞鏌勯泦鍚堢殑姣忎竴涓敼鍙?灝嗕細(xì)褰卞搷鍒版墍鏈夋墽琛屼簨浠跺驚鐜殑綰跨▼.鍦ㄦ病鏈夊悓姝ョ殑鎯呭喌涓嬪厑璁歌繖浜涙敼鍙樼殑鍙戠敓,浼?xì)瀵艰嚧涓㈠ぷ兒嬩?鎴栦笉姝g‘,涓嶅悎娉曠殑鍙ユ焺琚垎鍙?涓轟簡鍦ㄥ綰跨▼鐨勬儏鍐典笅,姝g‘鐨勫鐞嗘敞鍐屽彂鐢熸敼鍙樼殑鎯呭喌,ACE_WFMO_Reactor緇存寔浜嗕笁涓彞鏌勪俊鎭泦鍚堝璞?
  1. 鐢ㄤ綔浜嬩歡渚︽煡鍜屽垎鍙戠殑褰撳墠鍙ユ焺
  2. 鏂板彞鏌? 闄や簡褰撳墠鍙ユ焺闆嗗悎,鏂板彞鏌勪篃鍦ㄧ瓑寰?/li>
  3. 鎸傝搗鍙ユ焺,鏄綋鍓嶅彞鏌勪腑鎸傝搗鐨勫彞鏌?/li>
褰撻渶瑕佹敼鍙樺凡娉ㄥ唽鐨勫彞鏌勬椂,(渚嬪:娉ㄥ唽,縐婚櫎,鎸傝搗鍜屾仮澶嶄竴涓簨浠跺鐞嗗櫒),瑕佽浣忓彞鏌?浜嬩歡澶勭悊鍣?浜嬩歡綾誨瀷淇℃伅,鍜岀浉鍏充俊鎭殑璁板綍.涓嬩竴涓畬鎴恏andle_events鐨勭嚎紼嬩細(xì)娉ㄦ剰鍒拌繖涓敼鍙?鑾峰彇reactor鐨勯攣,絳夊緟鎵鏈夊叾浠栨鍦ㄨ繍琛宧andle_events鐨勭嚎紼嬪畬鎴?涓轟簡鑳借榪欎簺綰跨▼鍙?qiáng)鏃剁殑瀹屾?絳夊緟鐨勭嚎紼嬪彂閫佷竴涓唴閮ㄤ簨浠?璇ュ唴閮ㄤ簨浠舵槸鍒嗗彂鍙ユ焺闆嗗悎鐨勪竴閮ㄥ垎.鍞ら啋鎵鏈夐樆濉炲湪WaitForMultipleObjects鐨勭嚎紼?榪欎釜鏃跺?鎵鏈夌殑浜嬩歡澶勭悊綰跨▼灝嗕細(xì)闃誨鍦ㄧ瓑寰呭彉鍖栫殑鍙戠敓.褰撳師濮嬬殑綰跨▼瀹屾垚蹇呰鐨勪俊鎭拰鍙ユ焺鏀瑰彉鍚?閲婃斁reactor鐨勯攣.鎵鏈夌殑浜嬩歡澶勭悊綰跨▼閲嶆柊寮濮嬪湪鏇存柊鍚庣殑鍙ユ焺闆嗗悎涓婅繘琛岀瓑寰?鍒嗙鍜屽垎鍙?
  • 鎺ㄨ繜浜嬩歡澶勭悊鍣ㄧ殑娓呴櫎.ACE_WFMO_Reactor娉ㄥ唽鏀瑰彉鐨勫歡榪熷紩鍏ヤ簡涓浜涗笌鍩轟簬select()鐨勫弽搴斿櫒鐨勪笉鍚屼箣澶?褰揾anle_*()鏂規(guī)硶榪斿洖-1鎴栬匒CE_Reactor::remove_handler()琚簨浠跺鐞嗗櫒璋冪敤鏃?瀹冩帹榪熶簨浠跺鐞嗗櫒鐨勭Щ闄ゅ拰handle_close()閽╁瓙鍑芥暟鐨勫洖璋?鐩村埌涓婇潰璇磋鐨勬敞鍐屾敼鍙樺彂鐢?鎵浠ヤ竴涓簲鐢ㄥ湪璇鋒眰ACE_WFMO_Reactor縐婚櫎涓涓簨浠跺鐞嗗櫒涔嬪悗,涓嶈兘绔嬪嵆鍒犻櫎璇ヤ簨浠跺鐞嗗櫒,鍚﹀垯reator鍚庢潵璋冪敤鐨刪andle_close()鏂規(guī)硶浼?xì)鍒嗗彂涓涓棤鏁堢殑鎸囬拡.


]]>
ACE鐨勭浉鍏崇殑鍑犱釜緗戝潃http://www.shnenglu.com/lijialian/archive/2006/06/13/8500.html涓鍔ㄤ笉濡備竴闈?/dc:creator>涓鍔ㄤ笉濡備竴闈?/author>Tue, 13 Jun 2006 07:23:00 GMThttp://www.shnenglu.com/lijialian/archive/2006/06/13/8500.htmlhttp://www.shnenglu.com/lijialian/comments/8500.htmlhttp://www.shnenglu.com/lijialian/archive/2006/06/13/8500.html#Feedback0http://www.shnenglu.com/lijialian/comments/commentRss/8500.htmlhttp://www.shnenglu.com/lijialian/services/trackbacks/8500.html
http://www.cs.wustl.edu/~schmidt/ACE/book1/Errata.txt
http://www.cs.wustl.edu/~schmidt/ACE/book2/Errata.txt

鑻辨枃璁ㄨ緇?br />http://groups.google.com/group/comp.soft-sys.ace

http://groups.google.com/group/comp.soft-sys.ace?lnk=oa

涓枃璁ㄨ鍖?br />http://forum.huihoo.com/forumdisplay.php?fid=125

鐩稿叧鏂囨。
http://www.cs.wustl.edu/~schmidt/ACE.html

鏈夊叧mpc闂
http://www.ociweb.com/products/mpc/faq.html#021

婧愮爜涓爣璁扮殑鍚箟
http://www.stack.nl/~dimitri/doxygen/commands.html


]]>
闈為樆濉濧cceptor鐨勫姩鏈?/title><link>http://www.shnenglu.com/lijialian/archive/2006/06/12/8446.html</link><dc:creator>涓鍔ㄤ笉濡備竴闈?/dc:creator><author>涓鍔ㄤ笉濡備竴闈?/author><pubDate>Mon, 12 Jun 2006 03:18:00 GMT</pubDate><guid>http://www.shnenglu.com/lijialian/archive/2006/06/12/8446.html</guid><wfw:comment>http://www.shnenglu.com/lijialian/comments/8446.html</wfw:comment><comments>http://www.shnenglu.com/lijialian/archive/2006/06/12/8446.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/lijialian/comments/commentRss/8446.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/lijialian/services/trackbacks/8446.html</trackback:ping><description><![CDATA[榪欑瘒鍐呭鏉ヨ嚜c++緗戠粶緙栫▼鍗? 絎竷绔?ACE鍚屾浜嬩歡鍒嗙灝佽. <br /><br />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 Sidebar 14: Motivation for Nonblocking Acceptors<br /><br />聽聽聽聽聽聽聽聽 褰撴妸涓涓狝cceptor socket浼犻掔粰select(),濡傛灉鏀跺埌涓涓摼鎺?閭d箞璇ocket琚爣璇嗕負(fù)嬋媧葷姸鎬?寰堝鏈嶅姟鍣ㄥ埄鐢ㄨ繖涓簨浠跺幓琛ㄦ槑鍙互璋冪敤accept(),涓嶄細(xì)寮曡搗闃誨.涓嶅垢鐨勬槸,鏈夋潵鑷猅CP/IP寮傛琛屼負(fù)鐨勮祫婧愮珵浜?鍦ㄥ疄闄呬腑,select()涔嬪悗灝辮〃鏄庝竴涓猘cceptor socket鏄縺媧葷殑(浣嗘槸鍦╝ccept()璋冪敤涔嬪墠),client鍙互鍏抽棴瀹冪殑榪炴帴,涓鏃ccept()闃誨娼滃湪鐨勬寕璧鋒暣涓繘紼?涓轟簡閬垮厤榪欎釜闂,<strong>acceptor socket褰撳拰select()涓璧蜂嬌鐢ㄧ殑鏃跺?搴旇涓鐩磋璁劇疆涓洪潪闃誨鐨勬ā寮?/strong>.鍦ˋCE涓?榪欐宸ヤ綔寰堟柟渚?鍙浼犻扐CE_NONBLOCK鏍囪瘑緇檈nable()鏂規(guī)硶灝卞彲浠ヤ簡.enable()鏂規(guī)硶鏄疉CE_IPC_SAP鎻愪緵鐨?鎵浠CE_SOCK_Acceptor涔熸嫢鏈?<img src ="http://www.shnenglu.com/lijialian/aggbug/8446.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/lijialian/" target="_blank">涓鍔ㄤ笉濡備竴闈?/a> 2006-06-12 11:18 <a href="http://www.shnenglu.com/lijialian/archive/2006/06/12/8446.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>error LNK2019:鏃犳硶瑙f瀽鐨勫閮ㄧ鍙?/title><link>http://www.shnenglu.com/lijialian/archive/2006/06/11/8435.html</link><dc:creator>涓鍔ㄤ笉濡備竴闈?/dc:creator><author>涓鍔ㄤ笉濡備竴闈?/author><pubDate>Sun, 11 Jun 2006 15:18:00 GMT</pubDate><guid>http://www.shnenglu.com/lijialian/archive/2006/06/11/8435.html</guid><wfw:comment>http://www.shnenglu.com/lijialian/comments/8435.html</wfw:comment><comments>http://www.shnenglu.com/lijialian/archive/2006/06/11/8435.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.shnenglu.com/lijialian/comments/commentRss/8435.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/lijialian/services/trackbacks/8435.html</trackback:ping><description><![CDATA[1.鏈濂藉厛鐢ˋCE鑷韓鐨勪緥瀛?嫻嬭瘯鎵緙栧簱鐨勬紜?<br />2.紜繚ACE.lib鎴朅CEd.lib鑳芥紜殑閾炬帴鍒板伐紼嬩腑.<br />3.濡傛灉鍑虹幇"__declspec(dllimport) int __cdecl ace_os_main_i"瀛楁牱鐨勯摼鎺ラ敊璇?鍙互鑰冭檻鍔犱笂#include "ace/OS_main.h"<img src ="http://www.shnenglu.com/lijialian/aggbug/8435.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/lijialian/" target="_blank">涓鍔ㄤ笉濡備竴闈?/a> 2006-06-11 23:18 <a href="http://www.shnenglu.com/lijialian/archive/2006/06/11/8435.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <a href="http://www.shnenglu.com/">青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品</a> <div style="position:fixed;left:-9000px;top:-9000px;"><font id="pjuwb"></font><button id="pjuwb"><pre id="pjuwb"></pre></button><sub id="pjuwb"></sub><tbody id="pjuwb"><var id="pjuwb"><address id="pjuwb"></address></var></tbody><listing id="pjuwb"><label id="pjuwb"><strong id="pjuwb"></strong></label></listing><wbr id="pjuwb"><small id="pjuwb"><tbody id="pjuwb"></tbody></small></wbr><ins id="pjuwb"><xmp id="pjuwb"></xmp></ins><style id="pjuwb"></style><label id="pjuwb"><em id="pjuwb"><li id="pjuwb"></li></em></label><samp id="pjuwb"></samp><menu id="pjuwb"><input id="pjuwb"></input></menu><pre id="pjuwb"><tbody id="pjuwb"><tfoot id="pjuwb"><button id="pjuwb"></button></tfoot></tbody></pre><form id="pjuwb"></form><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"><sup id="pjuwb"></sup></label></style></i><li id="pjuwb"><table id="pjuwb"><abbr id="pjuwb"></abbr></table></li><video id="pjuwb"></video><dfn id="pjuwb"></dfn><progress id="pjuwb"></progress><strong id="pjuwb"></strong><mark id="pjuwb"></mark><em id="pjuwb"></em><tbody id="pjuwb"><p id="pjuwb"><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike></p></tbody><option id="pjuwb"></option><strike id="pjuwb"></strike><u id="pjuwb"></u><td id="pjuwb"><center id="pjuwb"><tr id="pjuwb"></tr></center></td><em id="pjuwb"><mark id="pjuwb"><em id="pjuwb"><tt id="pjuwb"></tt></em></mark></em><strong id="pjuwb"></strong><wbr id="pjuwb"></wbr><s id="pjuwb"></s><strong id="pjuwb"></strong><legend id="pjuwb"></legend><nav id="pjuwb"></nav><dl id="pjuwb"><th id="pjuwb"><dl id="pjuwb"></dl></th></dl><noframes id="pjuwb"><ins id="pjuwb"></ins></noframes><font id="pjuwb"></font><strike id="pjuwb"><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"></label></style></i></strike><output id="pjuwb"></output><thead id="pjuwb"><pre id="pjuwb"></pre></thead><source id="pjuwb"></source><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem><pre id="pjuwb"><span id="pjuwb"><pre id="pjuwb"><big id="pjuwb"></big></pre></span></pre><cite id="pjuwb"><fieldset id="pjuwb"><s id="pjuwb"><rt id="pjuwb"></rt></s></fieldset></cite><big id="pjuwb"><progress id="pjuwb"><big id="pjuwb"></big></progress></big><samp id="pjuwb"><delect id="pjuwb"></delect></samp><dl id="pjuwb"></dl><strike id="pjuwb"><nav id="pjuwb"><dl id="pjuwb"><strong id="pjuwb"></strong></dl></nav></strike><tbody id="pjuwb"><b id="pjuwb"><optgroup id="pjuwb"><rp id="pjuwb"></rp></optgroup></b></tbody><em id="pjuwb"></em><xmp id="pjuwb"><blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote></xmp> <i id="pjuwb"><abbr id="pjuwb"><i id="pjuwb"><abbr id="pjuwb"></abbr></i></abbr></i><center id="pjuwb"><acronym id="pjuwb"><center id="pjuwb"></center></acronym></center><pre id="pjuwb"></pre><ul id="pjuwb"><thead id="pjuwb"></thead></ul><blockquote id="pjuwb"><pre id="pjuwb"><sup id="pjuwb"></sup></pre></blockquote><acronym id="pjuwb"></acronym><big id="pjuwb"><s id="pjuwb"></s></big><th id="pjuwb"></th><th id="pjuwb"></th><tbody id="pjuwb"></tbody><thead id="pjuwb"><strike id="pjuwb"></strike></thead><th id="pjuwb"><dl id="pjuwb"><wbr id="pjuwb"></wbr></dl></th><dl id="pjuwb"><strong id="pjuwb"></strong></dl><abbr id="pjuwb"><noframes id="pjuwb"><noscript id="pjuwb"></noscript></noframes></abbr><td id="pjuwb"><ol id="pjuwb"></ol></td><li id="pjuwb"><noscript id="pjuwb"><abbr id="pjuwb"></abbr></noscript></li><small id="pjuwb"><bdo id="pjuwb"><nav id="pjuwb"></nav></bdo></small><style id="pjuwb"></style><optgroup id="pjuwb"><table id="pjuwb"></table></optgroup><center id="pjuwb"><tr id="pjuwb"><dfn id="pjuwb"></dfn></tr></center><th id="pjuwb"></th><u id="pjuwb"></u><tfoot id="pjuwb"><legend id="pjuwb"><i id="pjuwb"></i></legend></tfoot><mark id="pjuwb"></mark><meter id="pjuwb"></meter><nav id="pjuwb"></nav><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><nobr id="pjuwb"></nobr><sub id="pjuwb"><th id="pjuwb"><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem></th></sub><thead id="pjuwb"><sub id="pjuwb"></sub></thead><ul id="pjuwb"><address id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></address></ul><dfn id="pjuwb"></dfn><pre id="pjuwb"></pre><input id="pjuwb"><cite id="pjuwb"><fieldset id="pjuwb"></fieldset></cite></input><u id="pjuwb"><form id="pjuwb"><u id="pjuwb"></u></form></u><kbd id="pjuwb"><em id="pjuwb"><mark id="pjuwb"></mark></em></kbd><tr id="pjuwb"></tr><del id="pjuwb"><form id="pjuwb"><address id="pjuwb"></address></form></del><tfoot id="pjuwb"><legend id="pjuwb"><ol id="pjuwb"><dl id="pjuwb"></dl></ol></legend></tfoot><menu id="pjuwb"><nobr id="pjuwb"><th id="pjuwb"><nobr id="pjuwb"></nobr></th></nobr></menu><fieldset id="pjuwb"></fieldset><pre id="pjuwb"><blockquote id="pjuwb"><samp id="pjuwb"></samp></blockquote></pre><xmp id="pjuwb"><sup id="pjuwb"><pre id="pjuwb"></pre></sup></xmp><span id="pjuwb"><progress id="pjuwb"></progress></span><font id="pjuwb"></font><var id="pjuwb"><abbr id="pjuwb"></abbr></var><strong id="pjuwb"><label id="pjuwb"><i id="pjuwb"><legend id="pjuwb"></legend></i></label></strong><tr id="pjuwb"><em id="pjuwb"><em id="pjuwb"><output id="pjuwb"></output></em></em></tr><thead id="pjuwb"><strike id="pjuwb"></strike></thead> <acronym id="pjuwb"></acronym><i id="pjuwb"></i><tt id="pjuwb"></tt><rt id="pjuwb"><source id="pjuwb"><rt id="pjuwb"></rt></source></rt><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike><del id="pjuwb"></del><font id="pjuwb"><output id="pjuwb"><ins id="pjuwb"><output id="pjuwb"></output></ins></output></font><kbd id="pjuwb"><tr id="pjuwb"><kbd id="pjuwb"></kbd></tr></kbd><pre id="pjuwb"><sup id="pjuwb"><delect id="pjuwb"><samp id="pjuwb"></samp></delect></sup></pre><samp id="pjuwb"></samp><track id="pjuwb"></track><tr id="pjuwb"></tr><center id="pjuwb"></center><fieldset id="pjuwb"></fieldset><i id="pjuwb"></i><td id="pjuwb"></td><rt id="pjuwb"></rt><object id="pjuwb"></object><pre id="pjuwb"><progress id="pjuwb"><sub id="pjuwb"><thead id="pjuwb"></thead></sub></progress></pre><kbd id="pjuwb"><tr id="pjuwb"><option id="pjuwb"></option></tr></kbd><output id="pjuwb"><ins id="pjuwb"></ins></output><ol id="pjuwb"></ol><source id="pjuwb"></source><strong id="pjuwb"></strong><ruby id="pjuwb"></ruby><sub id="pjuwb"><meter id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></meter></sub><pre id="pjuwb"></pre><center id="pjuwb"></center><tr id="pjuwb"><tbody id="pjuwb"><xmp id="pjuwb"><dd id="pjuwb"></dd></xmp></tbody></tr><video id="pjuwb"></video><pre id="pjuwb"></pre><form id="pjuwb"><optgroup id="pjuwb"></optgroup></form><samp id="pjuwb"></samp><kbd id="pjuwb"></kbd><strong id="pjuwb"><option id="pjuwb"></option></strong><object id="pjuwb"></object><abbr id="pjuwb"><noframes id="pjuwb"><abbr id="pjuwb"></abbr></noframes></abbr><ul id="pjuwb"><del id="pjuwb"><button id="pjuwb"><pre id="pjuwb"></pre></button></del></ul><abbr id="pjuwb"></abbr><strong id="pjuwb"><code id="pjuwb"><strong id="pjuwb"></strong></code></strong><option id="pjuwb"></option><optgroup id="pjuwb"><bdo id="pjuwb"><code id="pjuwb"></code></bdo></optgroup><mark id="pjuwb"><em id="pjuwb"><font id="pjuwb"></font></em></mark><acronym id="pjuwb"><code id="pjuwb"></code></acronym><dl id="pjuwb"></dl><em id="pjuwb"></em><object id="pjuwb"><input id="pjuwb"><object id="pjuwb"></object></input></object><output id="pjuwb"><dd id="pjuwb"></dd></output><option id="pjuwb"><button id="pjuwb"><option id="pjuwb"></option></button></option><small id="pjuwb"></small></div> <a href="http://simextec.com" target="_blank">国产精品福利在线观看</a>| <a href="http://www47067.com" target="_blank">免费成人毛片</a>| <a href="http://bckxy.com" target="_blank">国产一区二区三区奇米久涩 </a>| <a href="http://56x6.com" target="_blank">欧美久久久久久久久久</a>| <a href="http://www13256.com" target="_blank">一区二区av在线</a>| <a href="http://800716.com" target="_blank">亚洲视频一起</a>| <a href="http://4080sy.com" target="_blank">极品尤物av久久免费看</a>| <a href="http://www456456.com" target="_blank">欧美激情精品久久久久久大尺度 </a>| <a href="http://667996.com" target="_blank">亚洲一区欧美</a>| <a href="http://senlin86.com" target="_blank">国模套图日韩精品一区二区</a>| <a href="http://xiaoyaer.com" target="_blank">久久全国免费视频</a>| <a href="http://km43yy.com" target="_blank">欧美国产精品人人做人人爱</a>| <a href="http://nmbgbc.com" target="_blank">亚洲一区二区三区午夜</a>| <a href="http://74va.com" target="_blank">欧美一区二区三区啪啪</a>| <a href="http://482b.com" target="_blank">亚洲美女精品一区</a>| <a href="http://08xxxc.com" target="_blank">亚洲一本视频</a>| <a href="http://xss521.com" target="_blank">亚洲国产日韩欧美在线图片</a>| <a href="http://59199m.com" target="_blank">亚洲三级观看</a>| <a href="http://3314133.com" target="_blank">国产亚洲精品aa</a>| <a href="http://jiangnanmm.com" target="_blank">欧美国产成人精品</a>| <a href="http://k-dchina.com" target="_blank">国产精品视频久久久</a>| <a href="http://changjiucf.com" target="_blank">久久综合一区二区三区</a>| <a href="http://994745.com" target="_blank">欧美三级午夜理伦三级中文幕</a>| <a href="http://bkksd.com" target="_blank">欧美一区中文字幕</a>| <a href="http://33wbwb.com" target="_blank">欧美激情按摩在线</a>| <a href="http://km43yy.com" target="_blank">久久激情视频</a>| <a href="http://bx989.com" target="_blank">国产精品chinese</a>| <a href="http://hcbr365.com" target="_blank">欧美激情一区三区</a>| <a href="http://xingda-sh.com" target="_blank">国产日韩欧美一区二区三区四区</a>| <a href="http://lampreydb.com" target="_blank">欧美激情精品</a>| <a href="http://topjavhd.com" target="_blank">国内精品久久久久久影视8</a>| <a href="http://www-4012345.com" target="_blank">91久久久久久国产精品</a>| <a href="http://y8e8.com" target="_blank">国内精品久久久久伊人av</a>| <a href="http://dddd30.com" target="_blank">亚洲最新在线视频</a>| <a href="http://389746.com" target="_blank">亚洲人成人99网站</a>| <a href="http://eee285.com" target="_blank">久久久久久高潮国产精品视</a>| <a href="http://456kp.com" target="_blank">亚洲永久在线</a>| <a href="http://ww245434.com" target="_blank">欧美+亚洲+精品+三区</a>| <a href="http://1616mz.com" target="_blank">欧美在线www</a>| <a href="http://270909.com" target="_blank">国产精品成人aaaaa网站</a>| <a href="http://8xn66w.com" target="_blank">欧美不卡视频</a>| <a href="http://a718fun.com" target="_blank">一区在线视频观看</a>| <a href="http://6688se.com" target="_blank">午夜精品理论片</a>| <a href="http://392294.com" target="_blank">亚洲小视频在线</a>| <a href="http://m10669.com" target="_blank">欧美成人性生活</a>| <a href="http://339254.com" target="_blank">麻豆av一区二区三区</a>| <a href="http://qibilly.com" target="_blank">国产伦精品一区二区三区四区免费 </a>| <a href="http://wwwby2232.com" target="_blank">在线视频亚洲欧美</a>| <a href="http://278538.com" target="_blank">日韩视频在线观看免费</a>| <a href="http://emu160.com" target="_blank">久久精品一区二区三区四区 </a>| <a href="http://dusenborg.com" target="_blank">久久综合九九</a>| <a href="http://44368com.com" target="_blank">欧美在线观看你懂的</a>| <a href="http://zhouqie.com" target="_blank">欧美小视频在线观看</a>| <a href="http://www033459.com" target="_blank">欧美激情中文字幕一区二区</a>| <a href="http://jxyptsw.com" target="_blank">黄色一区三区</a>| <a href="http://580078.com" target="_blank">久久精品二区亚洲w码</a>| <a href="http://fsxinruiph.com" target="_blank">性欧美8khd高清极品</a>| <a href="http://julong-ads.com" target="_blank">欧美日韩一区二区精品</a>| <a href="http://p5555ww.com" target="_blank">亚洲区中文字幕</a>| <a href="http://sexx777.com" target="_blank">亚洲精品一区在线观看</a>| <a href="http://021jjjflaw.com" target="_blank">美女脱光内衣内裤视频久久影院 </a>| <a href="http://3534m.com" target="_blank">欧美好吊妞视频</a>| <a href="http://www4848xx.com" target="_blank">欧美激情一区在线观看</a>| <a href="http://qiezi2vip.com" target="_blank">亚洲电影av</a>| <a href="http://b871.com" target="_blank">欧美成人自拍</a>| <a href="http://caofujia.com" target="_blank">亚洲国产导航</a>| <a href="http://8x27.com" target="_blank">日韩午夜黄色</a>| <a href="http://8842aa.com" target="_blank">欧美日韩国产美女</a>| <a href="http://84172199.com" target="_blank">亚洲手机在线</a>| <a href="http://3374com.com" target="_blank">久久精品国产免费观看</a>| <a href="http://91see8.com" target="_blank">国内精品久久久久国产盗摄免费观看完整版 </a>| <a href="http://91x8.com" target="_blank">一区二区三区色</a>| <a href="http://wslsp.com" target="_blank">欧美日一区二区在线观看</a>| <a href="http://jdss777.com" target="_blank">亚洲精品日韩在线观看</a>| <a href="http://8946286.com" target="_blank">亚洲视频精选在线</a>| <a href="http://287975.com" target="_blank">国产精品毛片大码女人</a>| <a href="http://quanfadq.com" target="_blank">亚洲欧美另类久久久精品2019</a>| <a href="http://4106446.com" target="_blank">亚洲欧美激情一区</a>| <a href="http://88848885.com" target="_blank">国产日韩精品在线</a>| <a href="http://www-s8.com" target="_blank">久久精品夜色噜噜亚洲aⅴ</a>| <a href="http://5858yp.com" target="_blank">免费久久99精品国产自在现线</a>| <a href="http://k37b.com" target="_blank">在线看成人片</a>| <a href="http://118017.com" target="_blank">欧美刺激性大交免费视频</a>| <a href="http://www-477499.com" target="_blank">亚洲人成网在线播放</a>| <a href="http://wwwbaoyu66.com" target="_blank">一区二区国产在线观看</a>| <a href="http://free18teen.com" target="_blank">国产精品久久一级</a>| <a href="http://5767j.com" target="_blank">性做久久久久久久免费看</a>| <a href="http://youminwang.com" target="_blank">狼狼综合久久久久综合网</a>| <a href="http://www62265.com" target="_blank">亚洲电影免费在线观看</a>| <a href="http://479n.com" target="_blank">欧美日韩一区二区在线</a>| <a href="http://378682.com" target="_blank">亚洲综合视频在线</a>| <a href="http://cqrebo.com" target="_blank">欧美成人蜜桃</a>| <a href="http://50ud.com" target="_blank">亚洲综合三区</a>| <a href="http://cdcpt.com" target="_blank">在线日本成人</a>| <a href="http://www92y.com" target="_blank">欧美视频一区在线观看</a>| <a href="http://zz9876.com" target="_blank">欧美一级电影久久</a>| <a href="http://yzstbjt.com" target="_blank">亚洲国产天堂久久国产91</a>| <a href="http://xaxkizlar.com" target="_blank">性8sex亚洲区入口</a>| <a href="http://winkwink333.com" target="_blank">亚洲黄网站黄</a>| <a href="http://bocai01.com" target="_blank">国产精品一区久久</a>| <a href="http://www1126v.com" target="_blank">欧美aa在线视频</a>| <a href="http://qiezisp2.com" target="_blank">亚洲男女毛片无遮挡</a>| <a href="http://7749137.com" target="_blank">欧美国产激情</a>| <a href="http://489633.com" target="_blank">久久久久国产精品一区三寸</a>| <a href="http://576193.com" target="_blank">亚洲精品欧美日韩</a>| <a href="http://4399360.com" target="_blank">国产视频综合在线</a>| <a href="http://044925.com" target="_blank">欧美日韩亚洲成人</a>| <a href="http://016889.com" target="_blank">久久久亚洲人</a>| <a href="http://337795.com" target="_blank">亚洲欧美日韩综合国产aⅴ</a>| <a href="http://6623555.com" target="_blank">亚洲国产精品成人</a>| <a href="http://710195.com" target="_blank">久久久久国产精品人</a>| <a href="http://bizhijidi.com" target="_blank">一区二区三区欧美视频</a>| <a href="http://hhh699.com" target="_blank">一区二区三区亚洲</a>| <a href="http://889644.com" target="_blank">国产精品视频久久</a>| <a href="http://instantptt.com" target="_blank">欧美精品色综合</a>| <a href="http://8x588.com" target="_blank">欧美成人日韩</a>| <a href="http://4186a.com" target="_blank">欧美资源在线观看</a>| <a href="http://fjnexpo.com" target="_blank">中文有码久久</a>| <a href="http://x1317.com" target="_blank">日韩视频永久免费观看</a>| <a href="http://8332777.com" target="_blank">精品成人在线观看</a>| <a href="http://021-job.com" target="_blank">国产亚洲a∨片在线观看</a>| <a href="http://491342.com" target="_blank">欧美深夜福利</a>| <a href="http://551692.com" target="_blank">欧美欧美全黄</a>| <a href="http://767296.com" target="_blank">男女av一区三区二区色多</a>| <a href="http://hernameplz.com" target="_blank">欧美一区二区三区的</a>| <a href="http://www497171c.com" target="_blank">一区二区三区精品视频在线观看 </a>| <a href="http://www-733999.com" target="_blank">先锋亚洲精品</a>| <a href="http://avtaobao7788.com" target="_blank">一区二区久久久久</a>| <a href="http://www-4890.com" target="_blank">亚洲欧洲日产国产网站</a>| <a href="http://85995m.com" target="_blank">国内外成人免费激情在线视频</a>| <a href="http://xpfuli.com" target="_blank">欧美系列电影免费观看</a>| <a href="http://henhenai1.com" target="_blank">欧美裸体一区二区三区</a>| <a href="http://www330849.com" target="_blank">免费91麻豆精品国产自产在线观看</a>| <a href="http://ff9222.com" target="_blank">性色一区二区</a>| <a href="http://xindefalv.com" target="_blank">午夜精品av</a>| <a href="http://482b.com" target="_blank">亚洲专区在线</a>| <a href="http://9906w.com" target="_blank">亚洲免费在线视频一区 二区</a>| <a href="http://www90aaa.com" target="_blank">亚洲美女av黄</a>| <a href="http://pktether.com" target="_blank">亚洲最黄网站</a>| <a href="http://989766.com" target="_blank">99亚洲一区二区</a>| <a href="http://yy6024.com" target="_blank">99国产成+人+综合+亚洲欧美</a>| <a href="http://niu96.com" target="_blank">亚洲欧洲精品一区二区精品久久久</a>| <a href="http://4y9k.com" target="_blank">蜜臀久久久99精品久久久久久</a>| <a href="http://2225101.com" target="_blank">久久久久久久久久码影片</a>| <a href="http://www0505nn.com" target="_blank">久久精品在线观看</a>| <a href="http://unrealcopgmail.com" target="_blank">久久不射网站</a>| <a href="http://www0505nn.com" target="_blank">久久精品免费播放</a>| <a href="http://china391.com" target="_blank">久久精品99国产精品酒店日本</a>| <a href="http://725443.com" target="_blank">欧美在线视频一区二区</a>| <a href="http://551731.com" target="_blank">久久国产精品亚洲va麻豆</a>| <a href="http://845821.com" target="_blank">久久精品国产久精国产思思</a>| <a href="http://njhuike.com" target="_blank">久久久久高清</a>| <a href="http://8181777.com" target="_blank">欧美成人r级一区二区三区</a>| <a href="http://521nb.com" target="_blank">欧美成人久久</a>| <a href="http://aaa211.com" target="_blank">亚洲精品一区中文</a>| <a href="http://489633.com" target="_blank">亚洲视频在线看</a>| <a href="http://dk13studio.com" target="_blank">午夜日韩福利</a>| <a href="http://njggmy.com" target="_blank">麻豆九一精品爱看视频在线观看免费</a>| <a href="http://am3757.com" target="_blank">噜噜噜在线观看免费视频日韩</a>| <a href="http://hhh699.com" target="_blank">欧美阿v一级看视频</a>| <a href="http://977dy.com" target="_blank">欧美精品三级</a>| <a href="http://mkaqiu.com" target="_blank">国产精品亚洲一区二区三区在线</a>| <a href="http://www-188445.com" target="_blank">国产欧美日韩综合一区在线播放</a>| <a href="http://777777hd.com" target="_blank">国产综合久久久久久鬼色</a>| <a href="http://xwsj2020.com" target="_blank">在线欧美影院</a>| <a href="http://uu6623.com" target="_blank">亚洲一区二区三区精品在线</a>| <a href="http://xiuren2021.com" target="_blank">欧美一级理论片</a>| <a href="http://wwmm9.com" target="_blank">蜜臀av国产精品久久久久</a>| <a href="http://shllswkj.com" target="_blank">亚洲国产婷婷综合在线精品</a>| <a href="http://oo853kj.com" target="_blank">一本久道综合久久精品</a>| <a href="http://www-888593.com" target="_blank">欧美永久精品</a>| <a href="http://ktokt.com" target="_blank">欧美国产欧美亚州国产日韩mv天天看完整</a>| <a href="http://tareandshare.com" target="_blank">欧美黑人多人双交</a>| <a href="http://ae262.com" target="_blank">国产精品欧美经典</a>| <a href="http://114mz.com" target="_blank">亚洲国产精品99久久久久久久久</a>| <a href="http://sygxjt.com" target="_blank">日韩亚洲欧美在线观看</a>| <a href="http://zxxx3.com" target="_blank">午夜亚洲精品</a>| <a href="http://hzjqkj.com" target="_blank">欧美高清视频在线播放</a>| <a href="http://www333444123.com" target="_blank">99亚洲一区二区</a>| <a href="http://8410555.com" target="_blank">久热精品视频在线</a>| <a href="http://www4455va.com" target="_blank">国产精品一区二区三区四区</a>| <a href="http://haixian360.com" target="_blank">亚洲国产第一页</a>| <a href="http://jiajianpei.com" target="_blank">午夜精品久久久久久久久久久</a>| <a href="http://580388.com" target="_blank">美女精品网站</a>| <a href="http://javliabary.com" target="_blank">亚洲小说春色综合另类电影</a>| <a href="http://gdjuba.com" target="_blank">久久香蕉国产线看观看av</a>| <a href="http://5418002.com" target="_blank">欧美丝袜一区二区</a>| <a href="http://www77vcd.com" target="_blank">亚洲福利视频一区二区</a>| <a href="http://zj-jufeng.com" target="_blank">亚洲一区在线看</a>| <a href="http://51shoudian.com" target="_blank">欧美黄色视屏</a>| <a href="http://xianqyd.com" target="_blank">欧美主播一区二区三区</a>| <a href="http://epiegame.com" target="_blank">欧美日韩一区二区三区免费</a>| <a href="http://569688.com" target="_blank">**欧美日韩vr在线</a>| <a href="http://birhit.com" target="_blank">久久精品国产亚洲一区二区</a>| <a href="http://ju5558.com" target="_blank">一区二区免费看</a>| <a href="http://aijiashe.com" target="_blank">免费视频最近日韩</a>| <a href="http://www909059.com" target="_blank">国内精品国语自产拍在线观看</a>| <a href="http://filmcameralibrary.com" target="_blank">亚洲一区二区免费在线</a>| <a href="http://060969.com" target="_blank">亚洲精品1区2区</a>| <a href="http://17ccem.com" target="_blank">亚洲国产欧美精品</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>