wangzhengquan
2020-10-13 2a4e4619f34a742e36693e589e0431347a72979b
src/socket/shm_socket.c
@@ -3,7 +3,7 @@
#include "logger_factory.h"
#include <map>
static Logger logger = LoggerFactory::getLogger();
static Logger *logger = LoggerFactory::getLogger();
@@ -43,7 +43,7 @@
  socket->force_bind = false;
  socket->dispatch_thread = 0;
  socket->status = SHM_CONN_CLOSED;
  socket->mutex = SemUtil::get(IPC_PRIVATE, 1);
  return socket;
}
@@ -258,6 +258,7 @@
  }
  hashtable_t *hashtable = mm_get_hashtable();
  SemUtil::dec(socket->mutex);
  if (socket->queue == NULL) {
    if (socket->port == -1) {
      socket->port = hashtable_alloc_key(hashtable);
@@ -268,6 +269,8 @@
    socket->queue = new SHMQueue<shm_msg_t>(socket->port, 16);
  }
  SemUtil::inc(socket->mutex);
  if (port == socket->port) {
    err_msg(0, "can not send to your self!");
    return -1;
@@ -316,6 +319,7 @@
             socket->socket_type);
  }
  hashtable_t *hashtable = mm_get_hashtable();
  SemUtil::dec(socket->mutex);
  if (socket->queue == NULL) {
    if (socket->port == -1) {
      socket->port = hashtable_alloc_key(hashtable);
@@ -326,6 +330,7 @@
    socket->queue = new SHMQueue<shm_msg_t>(socket->port, 16);
  }
  SemUtil::inc(socket->mutex);
  shm_msg_t src;
  // printf("shm_recvfrom pop before\n");