From b45e986f51e4545a9f42e6f387829a75d589c69a Mon Sep 17 00:00:00 2001
From: chenshijun <chenshijun@aiotlink.com>
Date: 星期三, 15 四月 2020 15:54:45 +0800
Subject: [PATCH] shmqueue的get和put,增加超次数退出

---
 shmData.go |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/shmData.go b/shmData.go
index 56ec5ac..fad696c 100644
--- a/shmData.go
+++ b/shmData.go
@@ -37,10 +37,10 @@
 		return err
 	}
 	sdi := shmData2Info(shmData)
-	if len(data) <= len(shmData) {
+	if len(data) <= len(shmData)-SHMSLICEOFFSET {
 		sdi.Len = uint32(len(data))
 	} else {
-		sdi.Len = uint32(len(shmData))
+		sdi.Len = uint32(len(shmData)-SHMSLICEOFFSET)
 	}
 
 	tmpData := ptr2Slice(unsafe.Pointer(&sdi.Cache), int(sdi.Len), len(shmData)-SHMSLICEOFFSET)
@@ -74,10 +74,10 @@
 // 閫傚悎瑙g爜浣跨敤
 func DeepCopyDataToShm(memData,shmData []byte) {
 	sdi := shmData2Info(shmData)
-	if len(memData) <= len(shmData) {
+	if len(memData) <= len(shmData)-SHMSLICEOFFSET {
 		sdi.Len = uint32(len(memData))
 	} else {
-		sdi.Len = uint32(len(shmData))
+		sdi.Len = uint32(len(shmData)-SHMSLICEOFFSET)
 	}
 
 	tmpData := ptr2Slice(unsafe.Pointer(&sdi.Cache), int(sdi.Len), len(shmData)-SHMSLICEOFFSET)

--
Gitblit v1.8.0