From 777a5cb93c03211b5e3105ed63f9e8cb5cb539d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=99=BD=E8=8C=B6=E6=B8=85=E6=AC=A2?= Date: Tue, 6 May 2025 16:02:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=80=E6=9C=89=E6=93=8D=E4=BD=9C=E5=8A=A0?= =?UTF-8?q?=E9=94=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- implement/sjson_write.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/implement/sjson_write.go b/implement/sjson_write.go index fd1db2a..af5ad90 100644 --- a/implement/sjson_write.go +++ b/implement/sjson_write.go @@ -32,6 +32,8 @@ func (s *SjsonWrite) Delete(dataPath string) error { var ( err error ) + s.l.Lock() + defer s.l.Unlock() if s.res, err = sjson.Delete(s.res, dataPath); nil != err { return err } @@ -90,6 +92,8 @@ func (s *SjsonWrite) Set(dataPath string, data any) error { } func (s *SjsonWrite) Result() string { + s.l.RLock() + defer s.l.RUnlock() return s.res } @@ -105,7 +109,7 @@ func (s *SjsonWrite) Map() (map[string]any, error) { } func (s *SjsonWrite) MapWithReceiver(receiver any) error { - return serialize.JSON.UnmarshalWithNumberForString(s.res, receiver) + return serialize.JSON.UnmarshalWithNumberForString(s.Result(), receiver) } func (s *SjsonWrite) Array() ([]any, error) { @@ -120,5 +124,5 @@ func (s *SjsonWrite) Array() ([]any, error) { } func (s *SjsonWrite) ArrayWithReceiver(receiver any) error { - return serialize.JSON.UnmarshalWithNumberForString(s.res, receiver) + return serialize.JSON.UnmarshalWithNumberForString(s.Result(), receiver) }