From f63d09fa1a5e8255e7c0d2ec4f12c4ab5bc84c95 Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Thu, 16 Mar 2023 23:03:37 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20=E4=BD=BF=E7=94=A8=E7=AC=AC=E4=B8=89?= =?UTF-8?q?=E6=96=B9=E5=90=8C=E6=AD=A5=E7=9B=98=E6=97=B6=E5=BC=B9=E5=87=BA?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E5=B9=B6=E9=80=80=E5=87=BA=E5=86=85=E6=A0=B8?= =?UTF-8?q?=20https://github.com/siyuan-note/siyuan/issues/7683?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/util/runtime.go | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/kernel/util/runtime.go b/kernel/util/runtime.go index 63155286f..36a186896 100644 --- a/kernel/util/runtime.go +++ b/kernel/util/runtime.go @@ -126,13 +126,21 @@ var ( TaskActionLangs = map[string]map[string]interface{}{} ) -var thirdPartySyncCheckTicker = time.NewTicker(time.Second * 10) +var ( + thirdPartySyncCheckTicker = time.NewTicker(time.Minute * 30) + firstThirdPartySyncCheck = true +) func CheckFileSysStatus() { if ContainerStd != Container { return } + if firstThirdPartySyncCheck { + firstThirdPartySyncCheck = false + time.Sleep(time.Second * 10) + } + reportFileSysFatalError := func(err error) { stack := debug.Stack() logging.LogErrorf("check file system status failed: %s, %s", err, stack) @@ -142,8 +150,6 @@ func CheckFileSysStatus() { const fileSysStatusCheckFile = "filesys_status_check" for { - <-thirdPartySyncCheckTicker.C - workspaceDirLower := strings.ToLower(WorkspaceDir) if strings.Contains(workspaceDirLower, "onedrive") || strings.Contains(workspaceDirLower, "dropbox") || strings.Contains(workspaceDirLower, "google drive") || strings.Contains(workspaceDirLower, "pcloud") { @@ -162,7 +168,7 @@ func CheckFileSysStatus() { continue } - for i := 0; i < 32; i++ { + for i := 0; i < 16; i++ { tmp := filepath.Join(dir, "check_"+gulu.Rand.String(7)) data := make([]byte, 1024*4) _, err := rand.Read(data) @@ -178,7 +184,7 @@ func CheckFileSysStatus() { time.Sleep(time.Second) - for j := 0; j < 32; j++ { + for j := 0; j < 64; j++ { f, err := os.Open(tmp) if nil != err { reportFileSysFatalError(err) @@ -225,6 +231,8 @@ func CheckFileSysStatus() { reportFileSysFatalError(err) break } + + <-thirdPartySyncCheckTicker.C } } }