瀏覽代碼

:art: Improve kernel stability by eliminating some data races https://github.com/siyuan-note/siyuan/issues/9842

Daniel 1 年之前
父節點
當前提交
150336dcf5
共有 1 個文件被更改,包括 4 次插入4 次删除
  1. 4 4
      kernel/treenode/blocktree.go

+ 4 - 4
kernel/treenode/blocktree.go

@@ -238,8 +238,8 @@ func RemoveBlockTreesByRootID(rootID string) {
 		slice := val.(*btSlice)
 		slice.m.Lock()
 		delete(slice.data, id)
-		slice.m.Unlock()
 		slice.changed = time.Now()
+		slice.m.Unlock()
 	}
 }
 
@@ -296,8 +296,8 @@ func RemoveBlockTreesByPathPrefix(pathPrefix string) {
 		slice := val.(*btSlice)
 		slice.m.Lock()
 		delete(slice.data, id)
-		slice.m.Unlock()
 		slice.changed = time.Now()
+		slice.m.Unlock()
 	}
 }
 
@@ -338,8 +338,8 @@ func RemoveBlockTreesByBoxID(boxID string) (ids []string) {
 		slice := val.(*btSlice)
 		slice.m.Lock()
 		delete(slice.data, id)
-		slice.m.Unlock()
 		slice.changed = time.Now()
+		slice.m.Unlock()
 	}
 	return
 }
@@ -352,8 +352,8 @@ func RemoveBlockTree(id string) {
 	slice := val.(*btSlice)
 	slice.m.Lock()
 	delete(slice.data, id)
-	slice.m.Unlock()
 	slice.changed = time.Now()
+	slice.m.Unlock()
 }
 
 func IndexBlockTree(tree *parse.Tree) {