Browse Source

Periodic clean of MEH is needed

Loweel 4 years ago
parent
commit
b36a834d38
1 changed files with 19 additions and 0 deletions
  1. 19 0
      matrix.go

+ 19 - 0
matrix.go

@@ -174,6 +174,7 @@ func (c *ByClassifier) enroll() {
 
 	log.Println("Classifier populated...")
 	go c.CleanThread()
+	go c.CleanMEH()
 	log.Println("Janitor Started")
 
 }
@@ -241,3 +242,21 @@ func (c *ByClassifier) readStatsTokens() {
 	}
 
 }
+
+//CleanMEH cleans periodically the spurious tokens.
+func (c *ByClassifier) CleanMEH() {
+
+	fmt.Println("Clean MEH Thread running...")
+
+	for a := range time.Tick(24 * time.Hour) {
+
+		c.MEH.Range(func(key interface{}, value interface{}) bool {
+			c.MEH.Delete(key)
+			return true
+		})
+
+		log.Println("MEH Cleaned  at:", a)
+
+	}
+
+}