From 37db284a0c422fc28088d21defb46ed0c576d3c1 Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期四, 16 七月 2020 10:38:18 +0800
Subject: [PATCH] update

---
 queue/socket.c |   19 +++++++------------
 1 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/queue/socket.c b/queue/socket.c
index cc9a08a..cd254e1 100644
--- a/queue/socket.c
+++ b/queue/socket.c
@@ -30,7 +30,8 @@
 	int port;
 	shm_mod_t mod;
 	SHMQueue<shm_msg_t> *queue;
-	std::map<int, SHMQueue<shm_msg_t>* > *remoteQueueMap;
+	SHMQueue<shm_msg_t> *remoteQueue;
+	// std::map<int, SHMQueue<shm_msg_t>* > *remoteQueueMap;
 	int slots;
 	int items;
 	int is_server;
@@ -114,26 +115,20 @@
 }
 
 
-static int __shm_rev(shm_socket_t* _socket, void **buf, int *size) {
+static int __shm_rev__(shm_socket_t* _socket) {
 	shm_msg_t src;
 	
 	std::map<int, SHMQueue<shm_msg_t>* > *remoteQueueMap = _socket->remoteQueueMap;
 	bool rv = _socket->queue->pop(src);
 
 	if (rv) {
-		if(src.type=="open")
+		if(src.type == SHM_SOCKET_OPEN) {
+			_socket->remoteQueue = new SHMQueue<shm_msg_t>(src.port, 0);
+		} 
 
 
 
-		if( _socket->is_server == 1 && remoteQueueMap->find(src.port) == remoteQueueMap->end()) {
-		 if(_socket->mod == REQ_REP)
-		  	SemUtil::dec(_socket->slots);
-
-		  remoteQueueMap->insert({src.port,  new SHMQueue<shm_msg_t>(src.port, 0)});
-
-		  if(_socket->mod == REQ_REP)
-		  	SemUtil::inc(_socket->items);
-		}
+		 
 		
 		void * _buf = malloc(src.size);
 		memcpy(_buf, src.buf, src.size);

--
Gitblit v1.8.0