From 6b2fd0e872389ffcd6c1da20b778a76f37fd31ec Mon Sep 17 00:00:00 2001 From: chenshijun <csj_sky@126.com> Date: 星期三, 25 三月 2020 15:21:31 +0800 Subject: [PATCH] add delete shm by shmkey method --- shmwrap.go | 39 +++++++++++++++++++++++++++++++++++---- 1 files changed, 35 insertions(+), 4 deletions(-) diff --git a/shmwrap.go b/shmwrap.go index 87ea7a4..12dba41 100644 --- a/shmwrap.go +++ b/shmwrap.go @@ -120,8 +120,8 @@ return data, id } -// DestroyShm destroy -func DestroyShm(data []byte) { +// DetachShm destroy +func DetachShm(data []byte) { ReleaseBlock(data) } @@ -135,7 +135,38 @@ return shm.Dt(d) } -// ReleaseShmID release shmid -func ReleaseShmID(id int) error { +// RemoveShmID Remove shmid +func RemoveShmID(id int) error { return shm.Rm(id) } + +// RemoveShmKey Remove shmkey +func RemoveShmKey(shmkey int) error { + _, id, err := AttachBlock(shmkey) + if err != nil { + return err + } else { + return shm.Rm(id) + } +} + +// DetachShmKey detach shmkey +func DetachShmKey(shmkey int) error { + d, _, err := AttachBlock(shmkey) + if err != nil { + return err + } else { + return Detach(d) + } +} + +// DetachAndRemoveShmKey detach and Remove shmkey +func DetachAndRemoveShmKey(shmkey int) error { + d, id, err := AttachBlock(shmkey) + if err != nil { + return err + } else { + Detach(d) + return shm.Rm(id) + } +} -- Gitblit v1.8.0