wangzhengquan
2021-01-15 0d6000e8e75e45d83dfc5718bd249a11fcce45a3
test_net_socket/heart_beat.cpp
@@ -2,7 +2,7 @@
#include "net_mod_socket_wrapper.h"
#include "bus_server_socket_wrapper.h"
#include "shm_mm_wraper.h"
#include "shm_mm_wrapper.h"
#include "usg_common.h"
#include <getopt.h>
@@ -28,10 +28,13 @@
  char sendbuf[512];
  int rv;
  int remote_port;
  while (net_mod_socket_recvfrom(serv, &recvbuf, &size, &remote_port) == 0) {
    printf( "RECEIVED HREARTBEAT FROM %d: %s\n", remote_port, recvbuf);
    net_mod_socket_sendto(serv, "suc", strlen("suc")+1, remote_port);
    free(recvbuf);
  while (true) {
    if(net_mod_socket_recvfrom_timeout(serv, &recvbuf, &size, &remote_port, 0, 2000000000)==0) {
      printf( "RECEIVED HREARTBEAT FROM %d: %s\n", remote_port, recvbuf);
      net_mod_socket_sendto(serv, "suc", strlen("suc")+1, remote_port);
      free(recvbuf);
    }
  }
  // sleep(1000);
  net_mod_socket_close(serv);
@@ -50,8 +53,10 @@
  net_mod_recv_msg_t *recv_arr;
  while (true) {
    sprintf(sendbuf, "%d", i);
    printf("SEND HEART:%s\n", sendbuf);
    rv = net_mod_socket_sendandrecv_timeout(client, node_arr, node_arr_size, sendbuf, strlen(sendbuf)+1, NULL, NULL, 1000);
    rv = net_mod_socket_sendandrecv_timeout(client, node_arr, node_arr_size, sendbuf, strlen(sendbuf)+1, NULL, NULL, 2000);
    //rv = net_mod_socket_sendandrecv(client, node_arr, node_arr_size, sendbuf, strlen(sendbuf)+1, NULL, NULL);
    printf("SEND HEART:%s, suc nodes = %d\n", sendbuf, rv);
   // sleep(1);
    i++;
  }
@@ -63,10 +68,10 @@
  signal(SIGINT,  sigint_handler);
  Targ *targ = (Targ *)arg;
  int port = targ->port;
  void *socket = net_mod_socket_open();
  void *client = net_mod_socket_open();
  int size;
  char sendbuf[512];
  long scale = 10;
  long scale = 100000;
  long i = 0;
  net_node_t node_arr[] = {"", 0, 100};
  int node_arr_size = 1;
@@ -77,19 +82,19 @@
  while (i < scale) {
    sprintf(sendbuf, "%d", i);
    printf("%d SEND HEART:%s\n", targ->id, sendbuf);
    net_mod_socket_sendto(socket, sendbuf, strlen(sendbuf) + 1, port);
    sleep(1);
    net_mod_socket_sendandrecv(client, node_arr, node_arr_size, sendbuf, strlen(sendbuf)+1, NULL, NULL);
    // net_mod_socket_sendto(socket, sendbuf, strlen(sendbuf) + 1, port);
    i++;
  }
  
   net_mod_socket_close(socket);
   net_mod_socket_close(client);
  return (void *)i;
}
 
void startClients(int port) {
void mclient(int port) {
  int status, i = 0, processors = 100;
  int status, i = 0, processors = 4;
  void *res[processors];
  Targ *targs = (Targ *)calloc(processors, sizeof(Targ));
  pthread_t tids[processors];
@@ -130,12 +135,12 @@
  port = atoi(argv[2]);
  if (strcmp("server", argv[1]) == 0) {
  if (strcmp("server", argv[1]) == 0)
    server(port);
  }
  if (strcmp("client", argv[1]) == 0)
  else if (strcmp("client", argv[1]) == 0)
    client(port);
  else if (strcmp("mclient", argv[1]) == 0)
    mclient(port);
  shm_mm_wrapper_destroy();
  return 0;