ACE-IPC(UDP)

来源:互联网 发布:ubuntu不显示wifi 编辑:程序博客网 时间:2024/04/28 12:26

client.cpp

#include "ace/OS.h"
#include "ace/SOCK_Dgram.h"
#include "ace/INET_Addr.h"
#include "ace/Log_Msg.h"


#define DATA_BUFFER_SIZE  1024
#define SIZE_DATA         100



int main(int argc, char *argv[]) {
    char *data_buf;
 ACE_INET_Addr remote_addr_;
 ACE_INET_Addr local_addr_(6666,"168.192.1.213");
 ACE_SOCK_Dgram local_(local_addr_);

 data_buf="Hello World111111111111111111111111111111111111!";
 remote_addr_.string_to_addr("168.192.1.213:5555");


 int t=ACE_OS::strlen(data_buf)+1;
 
 while(local_.send(data_buf,t,remote_addr_)!=-1)
 {
  char *data_buf1=new char[SIZE_DATA];
  ACE_OS::sleep(1);
     int count=0;
  if((count=local_.recv(data_buf1,ACE_OS::strlen(data_buf1),remote_addr_))!=-1)
  {
    ACE_DEBUG((LM_DEBUG, "Data received from remote server %s was: %d,%s /n",remote_addr_.get_host_name(),count,data_buf1));
  }else{
    break;
  }
 }

 return 0;
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

server.cpp

#include "ace/OS.h"
#include "ace/SOCK_Dgram.h"
#include "ace/INET_Addr.h"
#include "ace/Log_Msg.h"

#define DATA_BUFFER_SIZE 1024
#define SIZE_DATA 100



int main(int argc, char *argv[])
{
  char             *data_buf;
  ACE_INET_Addr    remote_addr_;
  ACE_INET_Addr    local_addr_(5555,"168.192.1.213");
  ACE_SOCK_Dgram   local_(local_addr_);
 
     data_buf = new char[DATA_BUFFER_SIZE];

     remote_addr_.string_to_addr("168.192.1.213:6666");

  
  int byte_count=0;

  while((byte_count=local_.recv(data_buf,SIZE_DATA,remote_addr_))!=-1)
  {
     data_buf[byte_count]=0;

     ACE_DEBUG((LM_DEBUG, "Data received from remote %s was %s /n",remote_addr_.get_host_name(), data_buf));
   
     ACE_OS::sleep(1);

           ACE_OS::sprintf(data_buf,"Server says hello to you too");

   
   if(local_.send(data_buf, ACE_OS::strlen(data_buf)+1,remote_addr_)==-1)
      break;
   
  }
  
  return 0;
}

 

原创粉丝点击