package cache import ( "container/list" "sync" ) // AddIndexHandleExcel 添加处理excel变更队列 // func AddIndexHandleExcelRedis(filePath string) bool { // if global.Re == nil { // if global.Rc != nil { // err := global.Rc.LPush(utils.HANDLE_HONGQI_EXCEL, filePath) // if err != nil { // fmt.Println("Add Index Handle Excel LPush Err:" + err.Error()) // } // return true // } // return true // } // return false // } // // AddIndexRefreshExcel 添加刷新excel队列 // func AddIndexRefreshExcel(filePath string) bool { // if global.Re == nil { // if global.Rc != nil { // err := global.Rc.LPush(utils.REFRESH_HONGQI_EXCEL, filePath) // if err != nil { // fmt.Println("Add Index Reresh Excel LPush Err:" + err.Error()) // } // return true // } // return true // } // return false // } // RefreshList 刷新的列表 var RefreshList *list.List func init() { RefreshList = list.New() } var FilePathMap = make(map[string]int) // FilePathMutex 创建一个互斥锁 var FilePathMutex sync.Mutex func IndexAutoRefresh(filePath string) { FilePathMutex.Lock() defer FilePathMutex.Unlock() // 如果存在该路径,那么就不记录入list if _, ok := FilePathMap[filePath]; ok { return } RefreshList.PushBack(filePath) FilePathMap[filePath] = 1 return }