소스 검색

fix mutex clash

abhishek9686 7 달 전
부모
커밋
3167b6b274
1개의 변경된 파일9개의 추가작업 그리고 4개의 파일을 삭제
  1. 9 4
      logic/acls.go

+ 9 - 4
logic/acls.go

@@ -198,16 +198,21 @@ func listAclFromCache() (acls []models.Acl) {
 
 func storeAclInCache(a models.Acl) {
 	aclCacheMutex.Lock()
-	defer aclCacheMutex.Unlock()
+	defer func() {
+		aclCacheMutex.Unlock()
+		go loadNetworkAclsIntoCache()
+	}()
 	aclCacheMap[a.ID] = a
-	go loadNetworkAclsIntoCache()
+
 }
 
 func removeAclFromCache(a models.Acl) {
 	aclCacheMutex.Lock()
-	defer aclCacheMutex.Unlock()
+	defer func() {
+		aclCacheMutex.Unlock()
+		go loadNetworkAclsIntoCache()
+	}()
 	delete(aclCacheMap, a.ID)
-	go loadNetworkAclsIntoCache()
 }
 
 func getAclFromCache(aID string) (a models.Acl, ok bool) {