From 5c912c70e9333298ff48f7ea15424f72ca977b99 Mon Sep 17 00:00:00 2001 From: Fu Juntang <StrongTiger_001@163.com> Date: 星期五, 17 九月 2021 09:43:55 +0800 Subject: [PATCH] Add the heartbeat logic feature. --- src/shm/mm.cpp | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/shm/mm.cpp b/src/shm/mm.cpp index 8fff5c2..e4ef672 100644 --- a/src/shm/mm.cpp +++ b/src/shm/mm.cpp @@ -113,7 +113,6 @@ newsize = ALIGN(size + (SIZE_T_SIZE << 1) + (PTR_SIZE << 1) ); - //fprintf(stderr, "mm_malloc : size=%u\n", size); /* Search the free list for a fit */ SemUtil::dec(mutex); if ((ptr = find_fit(newsize)) != NULL) @@ -123,8 +122,11 @@ return aptr; } else { SemUtil::inc(mutex); + err_msg(0, "mm_malloc : out of memery\n"); + LoggerFactory::getLogger()->fatal("mm_malloc : out of memery\n"); // abort(); - err_exit(0, "mm_malloc : out of memery\n"); + exit(1); + return NULL; } @@ -254,6 +256,7 @@ first = false; shmid = shmget(SHM_KEY, 0, 0); } + if (shmid == -1) err_exit(errno, "mm_init shmget"); shmp = shmat(shmid, key_addr, 0); @@ -336,8 +339,6 @@ else LoggerFactory::getLogger()->debug("shared memory destroy\n"); - LoggerFactory::getLogger()->debug( "mm_destroy: real destroy."); - SemUtil::inc(mutex); SemUtil::remove(mutex); return true; @@ -361,6 +362,7 @@ void mm_free_by_key(int key) { void *ptr; + ptr = hashtable_get(hashtable, key); if(ptr != NULL) { mm_free(ptr); -- Gitblit v1.8.0