From 07b76017e8d7a11f588163a1097e2131d7c9ee45 Mon Sep 17 00:00:00 2001
From: chenshijun <csj_sky@126.com>
Date: 星期二, 31 三月 2020 14:21:34 +0800
Subject: [PATCH] 添加查询连接个数和强制删除共享内存的接口

---
 shmwrap.go |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/shmwrap.go b/shmwrap.go
index 2f48b70..7975d61 100644
--- a/shmwrap.go
+++ b/shmwrap.go
@@ -167,3 +167,27 @@
         return shm.Rm(id)
     }
 }
+
+func ShmAttachNum(shmId int) (int,error) {
+    var idDs shm.IdDs
+
+    _, err := shm.Ctl(shmId, shm.IPC_STAT, &idDs)
+    if err != nil {
+        return 0, err
+    }
+
+    return int(idDs.Nattch), nil
+}
+
+func ForceRemoveShm(data []byte, shmId int) error {
+    count, err := ShmAttachNum(shmId)
+    if err != nil{
+        return err
+    }else{
+        for i:=0; i < count; i++{
+            Detach(data)
+        }
+    }
+    RemoveShmID(shmId)
+    return nil
+}

--
Gitblit v1.8.0