From 365b1a915aefca287720be44576b283b22e279ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BA=90=E6=96=87=E9=9B=A8?= <41315874+fumiama@users.noreply.github.com> Date: Sun, 17 Apr 2022 20:32:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=AB=9E=E4=BA=89=E9=80=9F?= =?UTF-8?q?=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.go | 31 +++++++++++-------------------- 1 file changed, 11 insertions(+), 20 deletions(-) diff --git a/main.go b/main.go index 0f9c0c6..aeba18f 100644 --- a/main.go +++ b/main.go @@ -14,7 +14,6 @@ import ( "unicode" "unsafe" - "github.com/FloatTech/zbputils/process" "github.com/fumiama/go-registry" "github.com/wdvxdr1123/ZeroBot/utils/helper" ) @@ -47,31 +46,23 @@ func main() { panic(err) } defer r.Close() - for i := 0; i < 1024; i++ { - err = r.Set("__setlock__", "fill") - if err == nil { - break + do1024 := func(k, v string) { + for i := 0; i < 1024; i++ { + err = r.Set(k, v) + if err == nil { + break + } + fmt.Println("accqiring set lock, retry times:", i) } - fmt.Println("accqiring set lock, retry times:", i) } + do1024("__setlock__", "fill") var wg sync.WaitGroup wg.Add(len(files)) for i, fn := range files { go func(i int, fn string) { - defer wg.Done() - for c := 0; c < 5; c++ { - err = r.Set("data/"+fn, md5s[i]) - fmt.Println("set", "data/"+fn, "=", hex.EncodeToString(helper.StringToBytes(md5s[i]))) - if err == nil { - break - } - if c >= 4 { - panic("ERROR:" + err.Error() + "max retry times exceeded") - } else { - fmt.Println("ERROR:", err, ", retry times:", c) - } - process.SleepAbout1sTo2s() - } + do1024("data/"+fn, md5s[i]) + fmt.Println("set", "data/"+fn, "=", hex.EncodeToString(helper.StringToBytes(md5s[i]))) + wg.Done() }(i, fn) } wg.Wait()