From a38304f7f6b91aaa1b0aa76cc9d3e5b6aef1f85f Mon Sep 17 00:00:00 2001 From: wangzhengquan <wangzhengquan85@126.com> Date: 星期六, 13 三月 2021 17:07:22 +0800 Subject: [PATCH] update --- src/socket/shm_socket.cpp | 27 ++++++++++++++++++++------- 1 files changed, 20 insertions(+), 7 deletions(-) diff --git a/src/socket/shm_socket.cpp b/src/socket/shm_socket.cpp index 4f5f4d9..1f5d47b 100644 --- a/src/socket/shm_socket.cpp +++ b/src/socket/shm_socket.cpp @@ -112,12 +112,9 @@ static int _shm_socket_close_(shm_socket_t *sockt) { - int rv; + int rv, i; logger->debug("shm_socket_close\n"); - // hashtable_remove(hashtable, mkey); - // if(sockt->queue != NULL) { - // sockt->queue = NULL; - // } + if(sockt->key != 0) { auto it = shmQueueStMap->find(sockt->key); @@ -127,6 +124,24 @@ } } + + printf("====sockt->queue addr = %p\n", sockt->queue); + + if(sockt->queue != NULL) { + for( i = 0; i < sockt->queue->size(); i++) { + mm_free((*(sockt->queue))[i].buf); + logger->info("======= %d free queue element buf\n", sockt->key); + } + + // hashtable_remove(hashtable, mkey); + // sockt->queue = NULL; + } + + + // hashtable_remove(hashtable, mkey); + // if(sockt->queue != NULL) { + // sockt->queue = NULL; + // } pthread_mutex_destroy(&(sockt->mutex) ); @@ -168,8 +183,6 @@ int shm_socket_get_key(shm_socket_t *sockt){ return sockt->key; } - - // 鐭繛鎺ユ柟寮忓彂閫� int shm_sendto(shm_socket_t *sockt, const void *buf, const int size, -- Gitblit v1.8.0