wangzhengquan
2020-12-22 fb8aef5a4908a50d415cf5ed33a10699fdfa9c98
src/socket/net_mod_socket.c
@@ -107,8 +107,8 @@
  mpool = (NetConnPool *)pthread_getspecific(poolKey);
  if (mpool == NULL)
  {
    /* If first call from this thread, allocate
                                   buffer for thread, and save its location */
    /* If first call from this thread, allocate buffer for thread, and save its location */
    logger->debug("Create connPool");
    mpool = new NetConnPool();
    if (mpool == NULL) {
      LoggerFactory::getLogger()->error(errno, "NetModSocket::_sendandrecv_ malloc");
@@ -129,10 +129,10 @@
  for (i = 0; i< arrlen; i++) {
    node = &node_arr[i];
    if(node->host == NULL) {
    if(node->host == NULL || strcmp(node->host, "") == 0 ) {
      // 本地发送
      shmModSocket.sendandrecv(send_buf, send_size, node->key, &recv_buf, &recv_size);
      strcpy( ret_arr[n_recv_suc].host,"localshm");
      strcpy( ret_arr[n_recv_suc].host,"");
      ret_arr[n_recv_suc].port = 0;
      ret_arr[n_recv_suc].key = node->key;
      ret_arr[n_recv_suc].content = recv_buf;
@@ -287,7 +287,13 @@
    }
  }
  // 本地发送
  if(node_arr == NULL || arrlen == 0) {
    if(shmModSocket.pub(topic, topic_size, content, content_size, node->key) == 0 ) {
      n_pub_suc++;
    }
  }
  for (i = 0; i < arrlen; i++) {
    node = &node_arr[i];
@@ -558,15 +564,6 @@
  return shmModSocket.sendandrecv_nowait(send_buf, send_size, key, recv_buf, recv_size);
}
/**
 * 启动bus
 *
 * @return 0 成功, 其他值 失败的错误码
*/
int  NetModSocket::start_bus() {
  return shmModSocket.start_bus();
}
/**
 * 订阅指定主题