锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲国产精品电影,欧美成人按摩,狠狠综合久久http://m.shnenglu.com/robinson119/category/4148.htmlUNIX/LINUX;ACE;SNMP;C++zh-cnSat, 24 May 2008 16:25:26 GMTSat, 24 May 2008 16:25:26 GMT60銆愯瘧銆慉CE Reactor 鐨勮璁″拰浣跨敤http://m.shnenglu.com/robinson119/archive/2007/08/03/29265.html瀹濇潐瀹濇潐Fri, 03 Aug 2007 04:42:00 GMThttp://m.shnenglu.com/robinson119/archive/2007/08/03/29265.htmlhttp://m.shnenglu.com/robinson119/comments/29265.htmlhttp://m.shnenglu.com/robinson119/archive/2007/08/03/29265.html#Feedback0http://m.shnenglu.com/robinson119/comments/commentRss/29265.htmlhttp://m.shnenglu.com/robinson119/services/trackbacks/29265.html1 浠嬬粛

姝ゆ枃鎻忚堪浜?jiǎn)缁勬垚ACE妗嗘灦鐨凴eactor妯″紡鐨勮璁″拰鎵ц銆俁eactor璐熻矗澶勭悊鐢變竴涓垨澶氫釜client騫跺彂鐨勪紶閫掔粰涓涓簲鐢ㄧ▼搴忕殑鏈嶅姟璇鋒眰銆傚簲鐢ㄧ▼搴忕殑姣忎釜鏈嶅姟鐢變竴涓垎紱葷殑event handler錛堜簨浠跺彞鏌勶級(jí)鎵ц錛宔vent handler鍖呮嫭涓涓垨澶氫釜榪涚▼鐨勬湇鍔″櫒鐗規(guī)畩璇鋒眰鐨勬柟娉曘?/p>

       姝ゆ枃鎻忚堪鐨凴eactor妯″紡鐨勬墽琛岋紝event handler鍒嗗彂鏄敱ACE_Reactor瀹炵幇鐨勩侫CE_Reactor緇撳悎I/O浜嬩歡鐨勫垎紱誨櫒錛屼互鍙?qiáng)鍏朵粬绫诲瀷鐨勬棄櫁村Q屾瘮濡倀imers鍜宻ignals銆侫CE_Reactor鐨勬牳蹇?jī)瀹炵幇鏄熮Z簬鍚屾浜嬩歡鍒嗙錛屾瘮濡俿elect鎴栬匴aitForMultipleObjects銆傚綋鍒嗙鍣ㄦ寚紺烘寚瀹氱殑浜嬩歡鍙戠敓浜?jiǎn)锛孉CE_Reactor浼?xì)鑷姩鍒嗗彂棰勫厛娉ㄥ唽鐨勪簨錃g鍙ユ焺鐨勬柟娉曘傛敞鍐岀殑event handler鏂規(guī)硶浼?xì)瀹屾垚搴旂敤绋嬪簭瀵瑰簲璇锋眰浜嬩欢鐨勬湇鍔°?/p>

       鏈枃緇勭粐濡備笅錛氱浜岀珷鎻忚堪ACE_Reactor妗嗘灦涓昏鐗規(guī)э紱絎笁绔犲ぇ鑷翠粙緇岮CE_Reactor瀹炵幇鐨凮O錛堥潰鍚戝璞★級(jí)璁捐錛涚鍥涚珷涓句簡(jiǎn)鏈嶅姟鍣ㄧ瀹炵幇鐨勪緥瀛愶紝鐢ㄤ互璇佹槑ACE_Reactor鎬庢牱綆鍖栧茍鍙戠殑錛屽熀浜庝簨浠剁殑緗戠粶搴旂敤紼嬪簭鐨勫彂灞曪紱絎簲绔犳弿榪板綋浣跨敤ACE_Reactor寮鍙戝熀浜庝簨浠剁殑搴旂敤紼嬪簭鐨勮璁¤鍒欙紱絎叚绔犳槸緇撴潫璇?/p>

2 ACE_Reactor鐨勭壒鎬?/p>

ACE_Reactor鎻愪緵OO鐨勪簨浠跺垎紱繪満鍒跺拰娑堟伅鍒嗗彂妗嗘灦錛屽畠綆鍖栧熀浜庝簨浠剁殑搴旂敤紼嬪簭鐨勫紑鍙戙備互涓嬬壒鎬ф槸錛?/p>

OO鐨勪簨浠跺垎紱誨拰娑堟伅鍒嗗彂鎺ュ彛錛?/p>

浣跨敤ACE_Reactor鐨勫簲鐢ㄧ▼搴忎笉鐩存帴璋冪敤搴曞眰OS錛堟搷浣滅郴緇燂級(jí)鐨勪簨浠跺垎紱籄PI鍑芥暟銆傛瘮濡俿elect鎴朩aitForMultipleObjects銆備粬浠戶鎵緼CE Event Handler鍩虹被騫跺垱寤轟簡(jiǎn)鍏蜂綋鐨別vent handlers銆傝繖涓被鐢ㄧ壒瀹氱殑铏氭嫙鍑芥暟澶勭悊涓嶅悓綾誨瀷鐨勪簨浠訛紝姣斿I/O浜嬩歡錛宼imer浜嬩歡錛宻ignals錛堜俊鍙烽噺鏈哄埗錛夛紝鍜屽悓姝ヤ簨浠躲?/p>

搴旂敤紼嬪簭鐢≧eactor妗嗘灦鍒涘緩鍏蜂綋鐨別vent handler錛屽茍娉ㄥ唽浠栦滑銆傜壒鎬?鏄劇ず浜?jiǎn)ACE Reactor.鐨勫叧閿粍浠躲傝繖涓壒鎬ф弿榪版墽琛屾棩瀛愭湇鍔$殑浜嬩歡鍙ユ焺錛岃繖涓湪絎洓绔犺榪般?br>



瀹濇潐 2007-08-03 12:42 鍙戣〃璇勮
]]>
[鍘焆ACE嫻?-鍒濆ACEhttp://m.shnenglu.com/robinson119/archive/2007/07/25/28745.html瀹濇潐瀹濇潐Wed, 25 Jul 2007 02:57:00 GMThttp://m.shnenglu.com/robinson119/archive/2007/07/25/28745.htmlhttp://m.shnenglu.com/robinson119/comments/28745.htmlhttp://m.shnenglu.com/robinson119/archive/2007/07/25/28745.html#Feedback2http://m.shnenglu.com/robinson119/comments/commentRss/28745.htmlhttp://m.shnenglu.com/robinson119/services/trackbacks/28745.html      ACE涓殑嫻佸寘瑁呮彁渚涢潰鍚戣繛鎺ョ殑閫氫俊銆傛祦鏁版嵁浼犺緭鍖呰綾誨寘鎷珹CE_SOCK_Stream鍜孉CE_LSOCK_Stream錛屽畠浠垎鍒寘瑁匱CP/IP鍜孶NIX鍩焥ocket鍗忚鏁版嵁浼犺緭鍔熻兘銆傝繛鎺ュ緩绔嬬被鍖呮嫭閽堝TCP/IP鐨凙CE_SOCK_Connector鍜孉CE_SOCK_Acceptor錛屼互鍙?qiáng)閽堝UNIX鍩焥ocket鐨凙CE_LSOCK_Connector鍜孉CE_LSOCK_Acceptor銆?br>      Acceptor綾葷敤浜庤鍔ㄥ湴鎺ュ彈榪炴帴錛堜嬌鐢˙SD accept()璋冪敤錛夛紝鑰孋onnector綾葷敤浜庝富鍔ㄥ湴寤虹珛榪炴帴錛堜嬌鐢˙SD connect()璋冪敤錛夈?br>      涓嬮潰鐨勪緥瀛愭紨紺烘帴鏀跺櫒鍜岃繛鎺ュ櫒鏄庢牱鐢ㄤ簬寤虹珛榪炴帴鐨勩傝榪炴帴闅忓悗灝嗙敤浜庝嬌鐢ㄦ祦鏁版嵁浼犺緭綾繪潵浼犺緭鏁版嵁銆?/p>

server绔唬鐮侊細(xì)
// 鐜VC6.0+ACE5.4.2
// proj:ACE stream server
// date:07-7-24
// robin
//

#include "stdafx.h"

#include "ace/Log_Msg.h"
#include "ace/Time_Value.h"
#include "ace/OS.h"


#include "ace/SOCK_Acceptor.h"
#include "ace/SOCK_Stream.h"

#define SIZE_DATA 18
#define SIZE_BUF 1024
#define NO_ITERATIONS 5

class Server
{
public:
 Server (int port) : server_addr_(port),peer_acceptor_(server_addr_)
 {
  data_buf_ = new char[SIZE_BUF];
 }

 //Handle the connection once it has been established. Here the
 //connection is handled by reading SIZE_DATA amount of data from the
 //remote and then closing the connection stream down.

 int handle_connection()
 {
  // Read data from client
  for(int i=0;i<NO_ITERATIONS;i++)
  {
   int byte_count=0;
   if( (byte_count = new_stream_.recv_n(data_buf_, SIZE_DATA, 0) ) == -1 )
    ACE_ERROR ((LM_ERROR, "%p\n", "Error in recv"));
   else
   {
    data_buf_[byte_count]=0;
    ACE_DEBUG((LM_DEBUG,"Server received %s \n",data_buf_));
   }
  }

  // Close new endpoint
  if (new_stream_.close () == -1)
   ACE_ERROR ((LM_ERROR, "%p\n", "close"));
  return 0;
 }


 //Use the acceptor component peer_acceptor_ to accept the connection
 //into the underlying stream new_stream_. After the connection has been
 //established call the handle_connection() method.
 
 int accept_connections ()
 {
  if (peer_acceptor_.get_local_addr (server_addr_) == -1)
   ACE_ERROR_RETURN ((LM_ERROR,"%p\n","Error in get_local_addr"),1);
  ACE_DEBUG ((LM_DEBUG,"Starting server at port %d\n",
   server_addr_.get_port_number ()));
  
  // Performs the iterative server activities.

  while(1)
  {
   ACE_Time_Value timeout (ACE_DEFAULT_TIMEOUT);
   if (peer_acceptor_.accept(new_stream_, &client_addr_, &timeout)== -1)
   {
    ACE_ERROR ((LM_ERROR, "%p\n", "accept"));
    continue;
   }
   else
   {
    ACE_DEBUG((LM_DEBUG,
     "Connection established with remote %s:%d\n",
     client_addr_.get_host_name(),client_addr_.get_port_number()));

    //Handle the connection
    handle_connection();
   }
  }
 }

private:
 char *data_buf_;
 ACE_INET_Addr server_addr_;
 ACE_INET_Addr client_addr_;
 ACE_SOCK_Acceptor peer_acceptor_;
 ACE_SOCK_Stream new_stream_;
};


int main (int argc, char *argv[])
{
 if(argc<2)
 {
  ACE_ERROR((LM_ERROR,"Usage %s <port_num>", argv[0]));
  ACE_OS::exit(1);
 }

// char *ip;
// ip = new char[strlen("192.168.1.160")];
// Server server(ACE_OS::atoi(ip));  //argv[1])

 Server server(ACE_OS::atoi(argv[1]));
 server.accept_connections();
 return 0;
}

client绔細(xì)
// proj:ACE stream client
// client
// date:7-24
// robin

#include "stdafx.h"

//******additional*******//
#include "ace/Log_Msg.h"  //ACE_ERROR ACE_DEBUG
#include "ace/Time_Value.h"  // ACE_Time_Value
#include "ace/OS.h"    // ACE_OS::atoi exit
//******additional*******//

#include "ace/SOCK_Connector.h"
#include "ace/INET_Addr.h"

#define SIZE_BUF 128
#define NO_ITERATIONS 5


class Client
{
public:
 Client(char *hostname, int port):remote_addr_(port,hostname)
 {
  data_buf_="Hello from Client";
 }

 //Uses a connector component `connector_’ to connect to a
 //remote machine and pass the connection into a stream
 //component client_stream_
 int connect_to_server()
 {
  // Initiate blocking connection with server.
  ACE_DEBUG ((LM_DEBUG, "(%P|%t) Starting connect to %s:%d\n",
   remote_addr_.get_host_name(),remote_addr_.get_port_number()));
  if (connector_.connect (client_stream_, remote_addr_) == -1)
   ACE_ERROR_RETURN ((LM_ERROR,"(%P|%t) %p\n","connection failed"),-1);
  else
   ACE_DEBUG ((LM_DEBUG,"(%P|%t) connected to %s\n",
   remote_addr_.get_host_name ()));
  return 0;
 }


 //Uses a stream component to send data to the remote host.
 int send_to_server()
 {
  // Send data to server
  for(int i=0;i<NO_ITERATIONS; i++)
  {
   if (client_stream_.send_n (data_buf_,
    ACE_OS::strlen(data_buf_)+1, 0) == -1)
   {
    ACE_ERROR_RETURN ((LM_ERROR,"(%P|%t) %p\n","send_n"),0);
    break;
   }
  }
  //Close down the connection
  close();
 }

 //Close down the connection properly.
 int close()
 {
  if (client_stream_.close () == -1)
   ACE_ERROR_RETURN ((LM_ERROR,"(%P|%t) %p\n","close"),-1);
  else
   return 0;
 }
private:
 ACE_SOCK_Stream client_stream_;
 ACE_INET_Addr remote_addr_;
 ACE_SOCK_Connector connector_;
 char *data_buf_;
};


int main(int argc, char* argv[])
{
 if(argc<3)
 {
  ACE_DEBUG((LM_DEBUG,"Usage %s <hostname> <port_number>\n", argv[0]));
  ACE_OS::exit(1);
 }

 Client client(argv[1],ACE_OS::atoi(argv[2]));
 client.connect_to_server();
 client.send_to_server();
 return 0;
}


榪愯緇撴灉錛?br>cmd閲屽埌exe鐩綍涓嬶紝鍏堝惎鍔ㄦ湇鍔$server.exe 192.168.1.160
濡傚浘1錛?br>
姝e湪杞絳夊緟銆?br>
鍐嶅埌client鏈嶅姟绔紝鍚屾牱鐨勬柟娉?br>榪愯鍛戒護(hù)琛屽弬鏁版牸寮?client.exe 192.168.1.160 192
 瑙f瀽錛欰CE_DEBUG((LM_DEBUG,"Usage %s <hostname> <port_number>\n", argv[0]));
         鍛戒護(hù)琛屽弬鏁頒負(fù) <hostname><port> = <192.168.1.160><192>
         绔彛鏄敱鍥?鐨勭浜岃鏄劇ず錛屼笉鏄嚜宸辮瀹氱殑銆?br>濡傚浘2錛?br>

鍙槸鐓ф惉涔︿笂鐨勪緥瀛愶紝鍚庨潰鎵撶畻鑷繁鍒嗘瀽涓涓嬨?/span>

瀹濇潐 2007-07-25 10:57 鍙戣〃璇勮
]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲自拍偷拍一区| 亚洲天堂av电影| 亚洲欧洲一区二区三区在线观看 | 99精品国产高清一区二区| 国内精品免费午夜毛片| 国产日韩精品一区二区三区在线 | 精品福利免费观看| 伊人激情综合| 亚洲人成久久| 一片黄亚洲嫩模| 亚洲线精品一区二区三区八戒| 亚洲午夜av| 性欧美1819sex性高清| 欧美一区二区三区四区在线观看地址 | 91久久国产综合久久91精品网站 | 欧美中日韩免费视频| 欧美亚洲免费高清在线观看| 久久精品成人一区二区三区蜜臀 | 亚洲另类黄色| 亚洲网站视频| 欧美在线精品免播放器视频| 久久亚洲欧美国产精品乐播| 欧美国产先锋| 一本色道久久综合亚洲二区三区| 亚洲影院在线| 久久影院午夜片一区| 欧美激情视频一区二区三区在线播放 | 亚洲欧美日韩天堂| 免费人成精品欧美精品| 亚洲精品综合精品自拍| 亚洲一区二区在线播放| 麻豆成人小视频| 欧美午夜无遮挡| 一区二区三区在线免费播放| 日韩系列在线| 亚洲国产mv| 91久久国产综合久久蜜月精品 | 亚洲国产电影| 亚洲欧美日韩国产精品| 另类激情亚洲| 国产精品蜜臀在线观看| 欧美紧缚bdsm在线视频| 狠狠色狠狠色综合人人| 亚洲综合成人婷婷小说| 亚洲第一区在线| 西瓜成人精品人成网站| 欧美日韩综合另类| 亚洲国产小视频在线观看| 欧美一级久久久| 亚洲人成人99网站| 久久精品中文字幕一区二区三区| 欧美午夜免费影院| 99国内精品久久久久久久软件| 麻豆乱码国产一区二区三区| 亚洲欧洲av一区二区| 亚洲一区久久久| 欧美日产在线观看| 最新精品在线| 欧美好骚综合网| 久久久久久夜| 一区二区三区我不卡| 久久久国产精品一区| 亚洲欧美国产毛片在线| 国产精品久久久久免费a∨| 亚洲激情午夜| 欧美国产激情| 美日韩精品视频| 在线日本成人| 欧美不卡视频一区| 久久在精品线影院精品国产| 在线观看精品视频| 米奇777在线欧美播放| 久久久之久亚州精品露出| 一区视频在线播放| 欧美成人国产va精品日本一级| 久久人91精品久久久久久不卡| 狠狠色综合色区| 老司机精品导航| 久久久人成影片一区二区三区观看 | 亚洲日本一区二区| 欧美国产综合视频| 一本久道久久综合中文字幕| 亚洲免费成人av电影| 欧美三区在线| 欧美一区亚洲二区| 国产一区二区三区在线免费观看| 久久艳片www.17c.com| 亚洲神马久久| 国产一区二区三区四区在线观看| 久久久久久久999精品视频| 久久国内精品视频| 亚洲国产成人久久综合一区| 免费在线成人| 欧美交受高潮1| 亚洲欧美在线x视频| 欧美一区二区视频观看视频| 玉米视频成人免费看| 最近中文字幕日韩精品| 亚洲图片欧美一区| 好看的日韩视频| 亚洲国产精品成人综合| 国产精品国产a| 一本色道久久88综合亚洲精品ⅰ| 亚洲宅男天堂在线观看无病毒| 国产综合18久久久久久| 亚洲第一黄网| 国产美女精品在线| 亚洲国产裸拍裸体视频在线观看乱了| 欧美日韩一区二区三区在线观看免| 亚洲欧美中文在线视频| 免播放器亚洲一区| 午夜一区在线| 欧美激情精品久久久久久黑人 | 国产精品国产三级欧美二区| 狠狠爱成人网| 一本色道久久88综合亚洲精品ⅰ | 亚洲乱码国产乱码精品精可以看 | 日韩亚洲欧美成人一区| 国产视频久久| 日韩午夜激情电影| 在线免费不卡视频| 亚洲午夜激情网站| 亚洲美女一区| 久久久国产精彩视频美女艺术照福利 | 国产精品少妇自拍| 亚洲黄网站在线观看| 国产在线精品二区| 亚洲欧美在线免费观看| 亚洲色图在线视频| 欧美精品久久99| 欧美激情中文字幕一区二区| 国内精品国语自产拍在线观看| 亚洲一区二区三区在线播放| 亚洲夜晚福利在线观看| 欧美精品 日韩| 91久久精品国产91性色tv| 亚洲国产精品热久久| 久久免费国产| 欧美激情一区三区| 亚洲美女黄色片| 欧美激情视频在线播放| 欧美视频福利| 亚洲国产精品久久91精品| 欧美视频中文字幕在线| 亚洲日本欧美| 99riav久久精品riav| 欧美激情在线观看| 亚洲精品国产精品乱码不99按摩| 亚洲电影下载| 久久综合中文| 在线亚洲观看| 欧美日韩天堂| 制服诱惑一区二区| 欧美在线观看视频一区二区| 欧美三级网页| 一区二区三区欧美亚洲| 亚洲无玛一区| 国产一区二区成人| 欧美在线视频日韩| 亚洲欧美日韩精品久久| 国产精品国产三级国产aⅴ无密码| 亚洲精品视频在线看| 亚洲国产精品ⅴa在线观看| 免费视频一区| 最新国产の精品合集bt伙计| 亚洲另类在线一区| 欧美另类一区| 亚洲免费影视第一页| 久久狠狠一本精品综合网| 国产日韩在线亚洲字幕中文| 性做久久久久久免费观看欧美 | 午夜一区二区三区在线观看| 国产日产亚洲精品| 久久国产精品毛片| 男男成人高潮片免费网站| 国产乱码精品| 欧美岛国激情| 亚洲免费电影在线| 亚洲免费视频成人| 国产视频一区欧美| 欧美激情精品久久久久久久变态 | 中国亚洲黄色| 欧美制服丝袜第一页| 在线看片成人| 久久精品毛片| 亚洲欧洲免费视频| 午夜欧美大片免费观看 | 欧美午夜精品理论片a级大开眼界| 亚洲图片欧美午夜| 你懂的国产精品| 国产一区三区三区| 欧美肥婆在线| 亚洲精品专区| 久久久久九九九| 亚洲狼人精品一区二区三区| 国产欧美日韩高清| 欧美日韩中文字幕在线| 久久国产主播精品| 在线视频一区二区| 免费在线观看成人av|